diff --git a/Makefile b/Makefile index 680a118..e08f058 100644 --- a/Makefile +++ b/Makefile @@ -114,6 +114,8 @@ gen-project: $(PYMODEL) # Format with black $(RUN) black $(PYMODEL)/_models.py $(RUN) black $(DEST)/*/*.py +# Use default_factory=list for input field + $(RUN) python modify_input_default.py test: test-schema test-python test-examples diff --git a/modify_input_default.py b/modify_input_default.py new file mode 100644 index 0000000..4fc9090 --- /dev/null +++ b/modify_input_default.py @@ -0,0 +1,18 @@ +import re + +with open("src/opencloning_linkml/datamodel/_models.py", "r") as f: + content = f.read() + +new_content = [] +change_next_line = False +for line in content.split("\n"): + new_line = line + if re.match(r"^\s+input:", line): + change_next_line = True + elif change_next_line: + new_line = new_line.replace("default=None", "default_factory=list") + change_next_line = False + new_content.append(new_line) + +with open("src/opencloning_linkml/datamodel/_models.py", "w") as f: + f.write("\n".join(new_content)) diff --git a/project/excel/opencloning_linkml.xlsx b/project/excel/opencloning_linkml.xlsx index ce03538..57ff653 100644 Binary files a/project/excel/opencloning_linkml.xlsx and b/project/excel/opencloning_linkml.xlsx differ diff --git a/project/jsonld/opencloning_linkml.context.jsonld b/project/jsonld/opencloning_linkml.context.jsonld index d9b14b2..712d092 100644 --- a/project/jsonld/opencloning_linkml.context.jsonld +++ b/project/jsonld/opencloning_linkml.context.jsonld @@ -1,7 +1,7 @@ { "comments": { "description": "Auto generated by LinkML jsonld context generator", - "generation_date": "2025-10-03T14:02:10", + "generation_date": "2025-10-20T16:29:26", "source": "opencloning_linkml.yaml" }, "@context": { diff --git a/project/jsonld/opencloning_linkml.jsonld b/project/jsonld/opencloning_linkml.jsonld index f687624..13038a0 100644 --- a/project/jsonld/opencloning_linkml.jsonld +++ b/project/jsonld/opencloning_linkml.jsonld @@ -3542,9 +3542,9 @@ ], "metamodel_version": "1.7.0", "source_file": "opencloning_linkml.yaml", - "source_file_date": "2025-10-03T13:59:29", + "source_file_date": "2025-10-20T16:11:45", "source_file_size": 26051, - "generation_date": "2025-10-03T14:02:11", + "generation_date": "2025-10-20T16:29:26", "@type": "SchemaDefinition", "@context": [ "project/jsonld/opencloning_linkml.context.jsonld", diff --git a/project/owl/opencloning_linkml.owl.ttl b/project/owl/opencloning_linkml.owl.ttl index 9043852..a64e28a 100644 --- a/project/owl/opencloning_linkml.owl.ttl +++ b/project/owl/opencloning_linkml.owl.ttl @@ -15,62 +15,62 @@ opencloning_linkml:CloningStrategy a owl:Class, linkml:ClassDefinition ; rdfs:label "CloningStrategy" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:frontend_version ], + owl:allValuesFrom opencloning_linkml:version_number ; + owl:onProperty opencloning_linkml:backend_version ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:files ], + owl:onProperty opencloning_linkml:primers ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:Primer ; owl:onProperty opencloning_linkml:primers ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:backend_version ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:AssociatedFile ; owl:onProperty opencloning_linkml:files ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:Source ; - owl:onProperty opencloning_linkml:sources ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:version_number ; - owl:onProperty opencloning_linkml:schema_version ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:Sequence ; - owl:onProperty opencloning_linkml:sequences ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:frontend_version ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:sources ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:files ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:backend_version ], + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequences ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:description ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:version_number ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:frontend_version ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:primers ], + owl:allValuesFrom opencloning_linkml:Sequence ; + owl:onProperty opencloning_linkml:sequences ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:Source ; + owl:onProperty opencloning_linkml:sources ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:version_number ; - owl:onProperty opencloning_linkml:backend_version ], + owl:onProperty opencloning_linkml:schema_version ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:frontend_version ], + owl:onProperty opencloning_linkml:schema_version ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:description ], + owl:onProperty opencloning_linkml:schema_version ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:backend_version ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:schema_version ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:sources ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:schema_version ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:description ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:version_number ; + owl:onProperty opencloning_linkml:frontend_version ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:description ] ; @@ -91,31 +91,31 @@ opencloning_linkml:CollectionOption a owl:Class, linkml:ClassDefinition ; rdfs:label "CollectionOption" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:name ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:source ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:CollectionOptionInfo ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:info ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:source ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:info ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:name ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:source ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:Source ; owl:onProperty opencloning_linkml:source ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:source ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:info ], + owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom opencloning_linkml:CollectionOptionInfo ; owl:onProperty opencloning_linkml:info ] ; skos:definition "Represents an option in a collection" ; skos:inScheme . @@ -124,49 +124,49 @@ opencloning_linkml:CollectionOptionInfo a owl:Class, linkml:ClassDefinition ; rdfs:label "CollectionOptionInfo" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:CollectionOptionType ; + owl:onProperty opencloning_linkml:type ], + [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:name ], + owl:onProperty opencloning_linkml:well ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:type ], + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:resistance ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:well ], + owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:name ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:resistance ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:well ], + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:description ], + owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:CollectionOptionType ; - owl:onProperty opencloning_linkml:type ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:resistance ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:description ], + owl:onProperty opencloning_linkml:well ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:description ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:well ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:resistance ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:well ], + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:resistance ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:type ] ; skos:definition "Additional information about a collection option" ; skos:inScheme . @@ -175,25 +175,25 @@ opencloning_linkml:AddgeneIdSource a owl:Class, linkml:ClassDefinition ; rdfs:label "AddgeneIdSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:addgene_sequence_type ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:AddgeneSequenceType ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:addgene_sequence_type ], [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom opencloning_linkml:AddgeneSequenceType ; owl:onProperty opencloning_linkml:addgene_sequence_type ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom [ a rdfs:Datatype ; + owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; owl:onProperty opencloning_linkml:sequence_file_url ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence that is identified by an Addgene id" ; @@ -213,29 +213,29 @@ opencloning_linkml:AnnotationSource a owl:Class, linkml:ClassDefinition ; rdfs:label "AnnotationSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:annotation_report ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:annotation_tool_version ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:annotation_tool_version ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:annotation_tool_version ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom opencloning_linkml:AnnotationTool ; owl:onProperty opencloning_linkml:annotation_tool ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:annotation_tool ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:annotation_report ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:AnnotationTool ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:annotation_tool ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:annotation_tool_version ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:AnnotationReport ; owl:onProperty opencloning_linkml:annotation_report ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:annotation_tool ], opencloning_linkml:Source ; skos:definition "Represents a computational step in which sequence features are annotated in a sequence" ; skos:inScheme . @@ -244,32 +244,32 @@ opencloning_linkml:AssemblyFragment a owl:Class, linkml:ClassDefinition ; rdfs:label "AssemblyFragment" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:right_location ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:left_location ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:sequence_range ; - owl:onProperty opencloning_linkml:right_location ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:sequence_range ; owl:onProperty opencloning_linkml:left_location ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:right_location ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:reverse_complemented ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:right_location ], + owl:onProperty opencloning_linkml:left_location ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:left_location ], + owl:onProperty opencloning_linkml:right_location ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty opencloning_linkml:reverse_complemented ], + owl:allValuesFrom opencloning_linkml:sequence_range ; + owl:onProperty opencloning_linkml:right_location ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:reverse_complemented ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty opencloning_linkml:reverse_complemented ], opencloning_linkml:SourceInput ; skos:definition "Represents a fragment in an assembly" ; skos:inScheme . @@ -278,7 +278,7 @@ opencloning_linkml:BenchlingUrlSource a owl:Class, linkml:ClassDefinition ; rdfs:label "BenchlingUrlSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; @@ -286,7 +286,7 @@ opencloning_linkml:BenchlingUrlSource a owl:Class, owl:withRestrictions ( [ xsd:pattern "^https:\\/\\/benchling\\.com\\/.+\\.gb$" ] ) ] ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence that is identified by a Benchling URL" ; @@ -323,44 +323,44 @@ opencloning_linkml:CollectionSource a owl:Class, linkml:ClassDefinition ; rdfs:label "CollectionSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:options ], - [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:title ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:image ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:category_id ], + owl:allValuesFrom opencloning_linkml:CollectionOption ; + owl:onProperty opencloning_linkml:options ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:image ], + owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:category_id ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:title ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:title ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:options ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:category_id ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:image ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:title ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:description ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:description ], + owl:onProperty opencloning_linkml:image ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:CollectionOption ; - owl:onProperty opencloning_linkml:options ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:category_id ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:category_id ], opencloning_linkml:Source ; skos:definition "Represents a collection of possible sources in a template" ; skos:inScheme . @@ -376,14 +376,14 @@ opencloning_linkml:DatabaseSource a owl:Class, linkml:ClassDefinition ; rdfs:label "DatabaseSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:database_id ], - [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:database_id ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:database_id ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:database_id ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is identified by a database id" ; skos:inScheme . @@ -392,15 +392,15 @@ opencloning_linkml:EuroscarfSource a owl:Class, linkml:ClassDefinition ; rdfs:label "EuroscarfSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^P\\d+$" ] ) ] ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^P\\d+$" ] ) ] ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence from the Euroscarf plasmid library" ; @@ -420,23 +420,23 @@ opencloning_linkml:GatewaySource a owl:Class, linkml:ClassDefinition ; rdfs:label "GatewaySource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:greedy ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:reaction_type ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:greedy ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom opencloning_linkml:GatewayReactionType ; owl:onProperty opencloning_linkml:reaction_type ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:GatewayReactionType ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:reaction_type ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Boolean ; owl:onProperty opencloning_linkml:greedy ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:reaction_type ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:greedy ], opencloning_linkml:AssemblySource ; skos:definition "Represents the source of a sequence that is generated by Gateway cloning" ; skos:inScheme . @@ -445,68 +445,68 @@ opencloning_linkml:GenomeCoordinatesSource a owl:Class, linkml:ClassDefinition ; rdfs:label "GenomeCoordinatesSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:locus_tag ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sequence_accession ], - [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:gene_id ], + owl:onProperty opencloning_linkml:assembly_accession ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:strand ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:assembly_accession ], + owl:onProperty opencloning_linkml:gene_id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:start ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:locus_tag ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:sequence_accession ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:end ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:locus_tag ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:end ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:strand ], + owl:onProperty opencloning_linkml:gene_id ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:end ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:strand ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:assembly_accession ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:strand ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:gene_id ], + owl:onProperty opencloning_linkml:sequence_accession ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:start ], + owl:onProperty opencloning_linkml:locus_tag ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:start ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:strand ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_accession ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:gene_id ], + owl:onProperty opencloning_linkml:start ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:locus_tag ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:assembly_accession ], + owl:onProperty opencloning_linkml:gene_id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:end ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:locus_tag ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:strand ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:sequence_accession ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:end ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:assembly_accession ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is identified by genome coordinates, requested from NCBI" ; skos:inScheme . @@ -522,19 +522,10 @@ opencloning_linkml:IGEMSource a owl:Class, linkml:ClassDefinition ; rdfs:label "IGEMSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:repository_id ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:repository_id ], - [ a owl:Restriction ; - owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sequence_file_url ], - [ a owl:Restriction ; - owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; @@ -542,6 +533,15 @@ opencloning_linkml:IGEMSource a owl:Class, owl:onDatatype xsd:string ; owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; owl:onProperty opencloning_linkml:sequence_file_url ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:repository_id ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:repository_id ], + [ a owl:Restriction ; + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:sequence_file_url ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence from an iGEM collection" ; skos:inScheme . @@ -571,44 +571,44 @@ opencloning_linkml:ManuallyTypedSource a owl:Class, linkml:ClassDefinition ; rdfs:label "ManuallyTypedSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:user_input ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:circular ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom [ a rdfs:Datatype ; + owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^[acgtACGT]+$" ] ) ] ) ] ; + owl:onProperty opencloning_linkml:user_input ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:user_input ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty opencloning_linkml:circular ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:overhang_watson_3prime ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:overhang_watson_3prime ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^[acgtACGT]+$" ] ) ] ) ] ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:user_input ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:overhang_crick_3prime ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:circular ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:overhang_watson_3prime ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:overhang_watson_3prime ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:circular ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is manually typed by the user" ; skos:inScheme . @@ -617,13 +617,13 @@ opencloning_linkml:NamedThing a owl:Class, linkml:ClassDefinition ; rdfs:label "NamedThing" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:id ], - [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:id ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:id ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:id ] ; skos:exactMatch schema1:Thing ; skos:inScheme . @@ -632,14 +632,14 @@ opencloning_linkml:OligoHybridizationSource a owl:Class, linkml:ClassDefinition ; rdfs:label "OligoHybridizationSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:overhang_crick_3prime ], - [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:overhang_crick_3prime ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:overhang_crick_3prime ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is generated by oligo hybridization" ; skos:inScheme . @@ -648,20 +648,20 @@ opencloning_linkml:OpenDNACollectionsSource a owl:Class, linkml:ClassDefinition ; rdfs:label "OpenDNACollectionsSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:sequence_file_url ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:repository_id ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; @@ -683,14 +683,14 @@ opencloning_linkml:PCRSource a owl:Class, linkml:ClassDefinition ; rdfs:label "PCRSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty opencloning_linkml:add_primer_features ], - [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:add_primer_features ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:add_primer_features ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty opencloning_linkml:add_primer_features ], opencloning_linkml:AssemblySource ; skos:definition "Represents the source of a sequence that is generated by PCR" ; skos:inScheme . @@ -699,131 +699,131 @@ opencloning_linkml:PlannotateAnnotationReport a owl:Class, linkml:ClassDefinition ; rdfs:label "PlannotateAnnotationReport" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Float ; - owl:onProperty opencloning_linkml:percent_identity ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:strand ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:percent_match_length ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:Type ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Float ; - owl:onProperty opencloning_linkml:percent_match_length ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:Feature ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:length_of_found_feature ], - [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:full_length_of_feature_in_db ], + owl:onProperty opencloning_linkml:Description ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:Type ], + owl:onProperty opencloning_linkml:length_of_found_feature ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:Description ], + owl:onProperty opencloning_linkml:sseqid ], [ a owl:Restriction ; owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:percent_identity ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:strand ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:start_location ], + owl:onProperty opencloning_linkml:fragment ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:percent_identity ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:fragment ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:Feature ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:strand ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:Description ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:sequence ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:end_location ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:fragment ], + owl:onProperty opencloning_linkml:percent_match_length ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:full_length_of_feature_in_db ], + owl:onProperty opencloning_linkml:database ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:end_location ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:length_of_found_feature ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:strand ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:Type ], + owl:onProperty opencloning_linkml:end_location ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Boolean ; - owl:onProperty opencloning_linkml:fragment ], + owl:allValuesFrom linkml:Float ; + owl:onProperty opencloning_linkml:percent_match_length ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:percent_identity ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:start_location ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:strand ], + owl:onProperty opencloning_linkml:Feature ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:end_location ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:Description ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:database ], + owl:onProperty opencloning_linkml:length_of_found_feature ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:sseqid ], + owl:onProperty opencloning_linkml:Feature ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:sseqid ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:Description ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:start_location ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:full_length_of_feature_in_db ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:fragment ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:sequence ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sseqid ], + owl:onProperty opencloning_linkml:Feature ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Float ; + owl:onProperty opencloning_linkml:percent_identity ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:length_of_found_feature ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sequence ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:start_location ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:Feature ], + owl:onProperty opencloning_linkml:database ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:end_location ], + owl:onProperty opencloning_linkml:start_location ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:percent_match_length ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:database ], + owl:onProperty opencloning_linkml:sseqid ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Boolean ; + owl:onProperty opencloning_linkml:fragment ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:Type ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:sequence ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:database ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:full_length_of_feature_in_db ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:Type ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:full_length_of_feature_in_db ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:Description ], + owl:onProperty opencloning_linkml:start_location ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:Type ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:sseqid ], opencloning_linkml:AnnotationReport ; skos:definition "Represents a report of an annotation step using Plannotate" ; skos:inScheme . @@ -884,10 +884,10 @@ opencloning_linkml:RestrictionAndLigationSource a owl:Class, linkml:ClassDefinition ; rdfs:label "RestrictionAndLigationSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:restriction_enzymes ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:restriction_enzymes ], opencloning_linkml:AssemblySource ; skos:definition "Represents the source of a sequence that is generated by restriction and ligation" ; @@ -897,22 +897,22 @@ opencloning_linkml:RestrictionEnzymeDigestionSource a owl:Class, linkml:ClassDefinition ; rdfs:label "RestrictionEnzymeDigestionSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:RestrictionSequenceCut ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:left_edge ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:RestrictionSequenceCut ; owl:onProperty opencloning_linkml:right_edge ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:right_edge ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:left_edge ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:right_edge ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:RestrictionSequenceCut ; owl:onProperty opencloning_linkml:left_edge ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:right_edge ], opencloning_linkml:SequenceCutSource ; skos:definition "Represents the source of a sequence that is a subfragment of another sequence, generated by sequence cutting using restriction enzymes." ; @@ -925,10 +925,10 @@ opencloning_linkml:RestrictionSequenceCut a owl:Class, owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:restriction_enzyme ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:restriction_enzyme ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:restriction_enzyme ], opencloning_linkml:SequenceCut ; skos:definition "Represents a cut in a DNA sequence that is made by a restriction enzyme" ; @@ -945,13 +945,16 @@ opencloning_linkml:SEVASource a owl:Class, linkml:ClassDefinition ; rdfs:label "SEVASource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:repository_id ], + owl:allValuesFrom [ a rdfs:Datatype ; + owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; + owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; @@ -959,13 +962,10 @@ opencloning_linkml:SEVASource a owl:Class, owl:withRestrictions ( [ xsd:pattern "^pSEVA\\d+.*$" ] ) ] ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; - owl:onProperty opencloning_linkml:sequence_file_url ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence that is identified by a SEVA id" ; @@ -995,10 +995,10 @@ opencloning_linkml:SequencingFile a owl:Class, linkml:ClassDefinition ; rdfs:label "SequencingFile" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:alignment ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:alignment ], opencloning_linkml:AssociatedFile ; skos:definition "Represents a sequencing file and its alignment to a sequence" ; @@ -1013,10 +1013,10 @@ opencloning_linkml:SnapGenePlasmidSource a owl:Class, owl:withRestrictions ( [ xsd:pattern "^.+\\/.+$" ] ) ] ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; - owl:minCardinality 1 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence from the SnapGene plasmid library identified by a SnapGene subpath of https://www.snapgene.com/plasmids/" ; @@ -1029,13 +1029,10 @@ opencloning_linkml:TemplateSequence a owl:Class, owl:minCardinality 0 ; owl:onProperty opencloning_linkml:circular ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:primer_design ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:primer_design ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:primer_design ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; @@ -1043,6 +1040,9 @@ opencloning_linkml:TemplateSequence a owl:Class, [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:circular ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:primer_design ], opencloning_linkml:Sequence ; skos:definition "Represents a sequence that is part of a template, where the actual sequence content will be determined by the user's actions" ; skos:inScheme . @@ -1051,38 +1051,38 @@ opencloning_linkml:TextFileSequence a owl:Class, linkml:ClassDefinition ; rdfs:label "TextFileSequence" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:file_content ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:SequenceFileFormat ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_format ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:overhang_watson_3prime ], + [ a owl:Restriction ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_format ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:overhang_crick_3prime ], + owl:onProperty opencloning_linkml:overhang_watson_3prime ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:file_content ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:overhang_crick_3prime ], + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:overhang_watson_3prime ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:sequence_file_format ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:overhang_watson_3prime ], + owl:onProperty opencloning_linkml:file_content ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:overhang_watson_3prime ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:overhang_crick_3prime ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:overhang_watson_3prime ], + owl:allValuesFrom opencloning_linkml:SequenceFileFormat ; + owl:onProperty opencloning_linkml:sequence_file_format ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:file_content ], @@ -1094,41 +1094,35 @@ opencloning_linkml:UploadedFileSource a owl:Class, linkml:ClassDefinition ; rdfs:label "UploadedFileSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:circularize ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:file_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:file_name ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:index_in_file ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:coordinates ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:SequenceFileFormat ; - owl:onProperty opencloning_linkml:sequence_file_format ], + owl:onProperty opencloning_linkml:circularize ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:sequence_range ; owl:onProperty opencloning_linkml:coordinates ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:file_name ], - [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:file_name ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:circularize ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_format ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:index_in_file ], - [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:index_in_file ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:file_name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:circularize ], + owl:onProperty opencloning_linkml:coordinates ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; owl:onProperty opencloning_linkml:circularize ], @@ -1138,6 +1132,12 @@ opencloning_linkml:UploadedFileSource a owl:Class, [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_format ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:index_in_file ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:SequenceFileFormat ; + owl:onProperty opencloning_linkml:sequence_file_format ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is uploaded as a file" ; skos:inScheme . @@ -1146,14 +1146,20 @@ opencloning_linkml:WekWikGeneIdSource a owl:Class, linkml:ClassDefinition ; rdfs:label "WekWikGeneIdSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:repository_id ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom [ a rdfs:Datatype ; + owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; + owl:onDatatype xsd:string ; + owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; owl:onProperty opencloning_linkml:sequence_file_url ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:sequence_file_url ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; owl:onDatatype xsd:string ; @@ -1162,12 +1168,6 @@ opencloning_linkml:WekWikGeneIdSource a owl:Class, [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], - [ a owl:Restriction ; - owl:allValuesFrom [ a rdfs:Datatype ; - owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; - owl:onDatatype xsd:string ; - owl:withRestrictions ( [ xsd:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ] ) ] ) ] ; - owl:onProperty opencloning_linkml:sequence_file_url ], opencloning_linkml:RepositoryIdSource ; skos:definition "Represents the source of a sequence that is identified by a WeKwikGene id" ; skos:inScheme . @@ -1261,15 +1261,6 @@ opencloning_linkml:Primer a owl:Class, linkml:ClassDefinition ; rdfs:label "Primer" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:name ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:name ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:database_id ], - [ a owl:Restriction ; owl:allValuesFrom [ a rdfs:Datatype ; owl:intersectionOf ( linkml:String [ a rdfs:Datatype ; owl:onDatatype xsd:string ; @@ -1277,10 +1268,13 @@ opencloning_linkml:Primer a owl:Class, owl:onProperty opencloning_linkml:sequence ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:sequence ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:database_id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sequence ], + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:database_id ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:sequence ], @@ -1288,8 +1282,14 @@ opencloning_linkml:Primer a owl:Class, owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:name ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:database_id ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:name ], opencloning_linkml:Sequence ; skos:definition "An oligonucleotide or primer" ; skos:inScheme . @@ -1298,23 +1298,23 @@ opencloning_linkml:SequenceCut a owl:Class, linkml:ClassDefinition ; rdfs:label "SequenceCut" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; - owl:onProperty opencloning_linkml:overhang ], - [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:cut_watson ], + owl:onProperty opencloning_linkml:overhang ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:overhang ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:cut_watson ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:cut_watson ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:overhang ] ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:overhang ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:Integer ; + owl:onProperty opencloning_linkml:cut_watson ] ; skos:definition "Represents a cut in a DNA sequence" ; skos:inScheme . @@ -1322,23 +1322,23 @@ opencloning_linkml:SequenceCutSource a owl:Class, linkml:ClassDefinition ; rdfs:label "SequenceCutSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom opencloning_linkml:SequenceCut ; + owl:onProperty opencloning_linkml:left_edge ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:SequenceCut ; owl:onProperty opencloning_linkml:right_edge ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:left_edge ], + owl:onProperty opencloning_linkml:right_edge ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:right_edge ], + owl:onProperty opencloning_linkml:left_edge ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:left_edge ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:SequenceCut ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:right_edge ], - [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:SequenceCut ; - owl:onProperty opencloning_linkml:left_edge ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is a subfragment of another sequence, generated by sequence cutting." ; skos:inScheme . @@ -1621,13 +1621,13 @@ opencloning_linkml:AnnotationReport a owl:Class, linkml:ClassDefinition ; rdfs:label "AnnotationReport" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:type ] ; skos:definition "Represents a report of an annotation step" ; skos:inScheme . @@ -1636,38 +1636,38 @@ opencloning_linkml:AssociatedFile a owl:Class, linkml:ClassDefinition ; rdfs:label "AssociatedFile" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence_id ], [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:type ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:file_type ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:file_name ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:AssociatedFileType ; - owl:onProperty opencloning_linkml:file_type ], + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:Sequence ; owl:onProperty opencloning_linkml:sequence_id ], [ a owl:Restriction ; owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:file_name ], + [ a owl:Restriction ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:file_type ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:file_name ], + owl:onProperty opencloning_linkml:sequence_id ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:file_name ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:file_name ], + owl:onProperty opencloning_linkml:file_type ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:sequence_id ], + owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:file_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; - owl:onProperty opencloning_linkml:type ], + owl:allValuesFrom opencloning_linkml:AssociatedFileType ; + owl:onProperty opencloning_linkml:file_type ], [ a owl:Restriction ; owl:minCardinality 0 ; owl:onProperty opencloning_linkml:type ] ; @@ -1684,10 +1684,13 @@ opencloning_linkml:SourceInput a owl:Class, linkml:ClassDefinition ; rdfs:label "SourceInput" ; rdfs:subClassOf [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; + owl:onProperty opencloning_linkml:type ], + [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:sequence ], + owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:allValuesFrom opencloning_linkml:Sequence ; @@ -1695,12 +1698,9 @@ opencloning_linkml:SourceInput a owl:Class, [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:sequence ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:type ] ; + owl:onProperty opencloning_linkml:sequence ] ; skos:definition "Represents an input to a source" ; skos:exactMatch schema1:Role ; skos:inScheme . @@ -1760,23 +1760,23 @@ opencloning_linkml:Sequence a owl:Class, linkml:ClassDefinition ; rdfs:label "Sequence" ; rdfs:subClassOf [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:id ], [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:type ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:id ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:type ], - [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:id ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:type ], [ a owl:Restriction ; - owl:allValuesFrom linkml:Integer ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:id ], + [ a owl:Restriction ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:type ], opencloning_linkml:NamedThing ; skos:definition "Represents a sequence" ; skos:exactMatch bioschemas:DNA ; @@ -1816,22 +1816,22 @@ opencloning_linkml:RepositoryIdSource a owl:Class, linkml:ClassDefinition ; rdfs:label "RepositoryIdSource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:RepositoryName ; - owl:onProperty opencloning_linkml:repository_name ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:repository_name ], + owl:minCardinality 1 ; + owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:minCardinality 1 ; owl:onProperty opencloning_linkml:repository_name ], [ a owl:Restriction ; - owl:minCardinality 1 ; - owl:onProperty opencloning_linkml:repository_id ], + owl:allValuesFrom opencloning_linkml:RepositoryName ; + owl:onProperty opencloning_linkml:repository_name ], [ a owl:Restriction ; - owl:allValuesFrom linkml:String ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:repository_id ], [ a owl:Restriction ; owl:maxCardinality 1 ; + owl:onProperty opencloning_linkml:repository_name ], + [ a owl:Restriction ; + owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:repository_id ], opencloning_linkml:Source ; skos:definition "Represents the source of a sequence that is identified by a repository id" ; @@ -1849,10 +1849,10 @@ opencloning_linkml:AssemblySource a owl:Class, linkml:ClassDefinition ; rdfs:label "AssemblySource" ; rdfs:subClassOf [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:circular ], [ a owl:Restriction ; - owl:maxCardinality 1 ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:circular ], [ a owl:Restriction ; owl:allValuesFrom linkml:Boolean ; @@ -1876,37 +1876,37 @@ opencloning_linkml:Source a owl:Class, rdfs:label "Source" ; rdfs:subClassOf [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:type ], + owl:onProperty opencloning_linkml:database_id ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:output_name ], [ a owl:Restriction ; - owl:allValuesFrom opencloning_linkml:SourceInput ; + owl:minCardinality 0 ; + owl:onProperty opencloning_linkml:type ], + [ a owl:Restriction ; + owl:minCardinality 0 ; owl:onProperty opencloning_linkml:input ], [ a owl:Restriction ; owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:type ], - [ a owl:Restriction ; - owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:output_name ], [ a owl:Restriction ; owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:input ], + owl:onProperty opencloning_linkml:output_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:Integer ; owl:onProperty opencloning_linkml:database_id ], [ a owl:Restriction ; - owl:minCardinality 0 ; + owl:maxCardinality 1 ; owl:onProperty opencloning_linkml:database_id ], - [ a owl:Restriction ; - owl:minCardinality 0 ; - owl:onProperty opencloning_linkml:output_name ], [ a owl:Restriction ; owl:maxCardinality 1 ; - owl:onProperty opencloning_linkml:database_id ], + owl:onProperty opencloning_linkml:output_name ], [ a owl:Restriction ; owl:allValuesFrom linkml:String ; owl:onProperty opencloning_linkml:type ], + [ a owl:Restriction ; + owl:allValuesFrom opencloning_linkml:SourceInput ; + owl:onProperty opencloning_linkml:input ], opencloning_linkml:NamedThing ; skos:definition "Represents the source of a sequence" ; skos:exactMatch schema1:CreateAction ; @@ -1948,114 +1948,114 @@ opencloning_linkml:type a owl:ObjectProperty, skos:definition "A LinkML data model for OpenCloning" . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:GatewaySource ; + rdfs:subClassOf opencloning_linkml:Primer ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:GatewaySource . + owl:someValuesFrom opencloning_linkml:Primer . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:HomologousRecombinationSource ; + rdfs:subClassOf opencloning_linkml:IGEMSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:HomologousRecombinationSource . + owl:someValuesFrom opencloning_linkml:IGEMSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:Sequence ; + rdfs:subClassOf opencloning_linkml:PlannotateAnnotationReport ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:Sequence . + owl:someValuesFrom opencloning_linkml:PlannotateAnnotationReport . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:SnapGenePlasmidSource ; + rdfs:subClassOf opencloning_linkml:AssociatedFile ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:SnapGenePlasmidSource . + owl:someValuesFrom opencloning_linkml:AssociatedFile . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:BenchlingUrlSource ; + rdfs:subClassOf opencloning_linkml:OverlapExtensionPCRLigationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:BenchlingUrlSource . + owl:someValuesFrom opencloning_linkml:OverlapExtensionPCRLigationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:TemplateSequence ; + rdfs:subClassOf opencloning_linkml:UploadedFileSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:TemplateSequence . + owl:someValuesFrom opencloning_linkml:UploadedFileSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:CreLoxRecombinationSource ; + rdfs:subClassOf opencloning_linkml:AnnotationReport ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:CreLoxRecombinationSource . + owl:someValuesFrom opencloning_linkml:AnnotationReport . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:PCRSource ; + rdfs:subClassOf opencloning_linkml:TextFileSequence ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:PCRSource . + owl:someValuesFrom opencloning_linkml:TextFileSequence . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:RestrictionEnzymeDigestionSource ; + rdfs:subClassOf opencloning_linkml:Sequence ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:RestrictionEnzymeDigestionSource . + owl:someValuesFrom opencloning_linkml:Sequence . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:TextFileSequence ; + rdfs:subClassOf opencloning_linkml:AssemblyFragment ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:TextFileSequence . + owl:someValuesFrom opencloning_linkml:AssemblyFragment . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:GibsonAssemblySource ; + rdfs:subClassOf opencloning_linkml:CRISPRSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:GibsonAssemblySource . + owl:someValuesFrom opencloning_linkml:CRISPRSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AddgeneIdSource ; + rdfs:subClassOf opencloning_linkml:RestrictionAndLigationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AddgeneIdSource . + owl:someValuesFrom opencloning_linkml:RestrictionAndLigationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AnnotationReport ; + rdfs:subClassOf opencloning_linkml:Source ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AnnotationReport . + owl:someValuesFrom opencloning_linkml:Source . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AssemblyFragment ; + rdfs:subClassOf opencloning_linkml:SequencingFile ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AssemblyFragment . + owl:someValuesFrom opencloning_linkml:SequencingFile . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:WekWikGeneIdSource ; + rdfs:subClassOf opencloning_linkml:SnapGenePlasmidSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:WekWikGeneIdSource . + owl:someValuesFrom opencloning_linkml:SnapGenePlasmidSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:SequenceCutSource ; + rdfs:subClassOf opencloning_linkml:AddgeneIdSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:SequenceCutSource . + owl:someValuesFrom opencloning_linkml:AddgeneIdSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AssociatedFile ; + rdfs:subClassOf opencloning_linkml:AssemblySource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AssociatedFile . + owl:someValuesFrom opencloning_linkml:AssemblySource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AssemblySource ; + rdfs:subClassOf opencloning_linkml:SEVASource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AssemblySource . + owl:someValuesFrom opencloning_linkml:SEVASource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:IGEMSource ; + rdfs:subClassOf opencloning_linkml:GibsonAssemblySource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:IGEMSource . + owl:someValuesFrom opencloning_linkml:GibsonAssemblySource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:OverlapExtensionPCRLigationSource ; + rdfs:subClassOf opencloning_linkml:CollectionSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:OverlapExtensionPCRLigationSource . + owl:someValuesFrom opencloning_linkml:CollectionSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:InVivoAssemblySource ; + rdfs:subClassOf opencloning_linkml:TemplateSequence ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:InVivoAssemblySource . + owl:someValuesFrom opencloning_linkml:TemplateSequence . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:UploadedFileSource ; + rdfs:subClassOf opencloning_linkml:WekWikGeneIdSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:UploadedFileSource . + owl:someValuesFrom opencloning_linkml:WekWikGeneIdSource . [] a owl:Restriction ; rdfs:subClassOf opencloning_linkml:EuroscarfSource ; @@ -2063,101 +2063,101 @@ opencloning_linkml:type a owl:ObjectProperty, owl:someValuesFrom opencloning_linkml:EuroscarfSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:AnnotationSource ; + rdfs:subClassOf opencloning_linkml:InFusionSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:AnnotationSource . + owl:someValuesFrom opencloning_linkml:InFusionSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:SourceInput ; + rdfs:subClassOf opencloning_linkml:OligoHybridizationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:SourceInput . + owl:someValuesFrom opencloning_linkml:OligoHybridizationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:ManuallyTypedSource ; + rdfs:subClassOf opencloning_linkml:HomologousRecombinationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:ManuallyTypedSource . + owl:someValuesFrom opencloning_linkml:HomologousRecombinationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:Source ; + rdfs:subClassOf opencloning_linkml:SourceInput ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:Source . + owl:someValuesFrom opencloning_linkml:SourceInput . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:SEVASource ; + rdfs:subClassOf opencloning_linkml:SequenceCutSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:SEVASource . + owl:someValuesFrom opencloning_linkml:SequenceCutSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:GenomeCoordinatesSource ; + rdfs:subClassOf opencloning_linkml:ReverseComplementSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:GenomeCoordinatesSource . + owl:someValuesFrom opencloning_linkml:ReverseComplementSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:PolymeraseExtensionSource ; + rdfs:subClassOf opencloning_linkml:OpenDNACollectionsSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:PolymeraseExtensionSource . + owl:someValuesFrom opencloning_linkml:OpenDNACollectionsSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:Primer ; + rdfs:subClassOf opencloning_linkml:AnnotationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:Primer . + owl:someValuesFrom opencloning_linkml:AnnotationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:OligoHybridizationSource ; + rdfs:subClassOf opencloning_linkml:CreLoxRecombinationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:OligoHybridizationSource . + owl:someValuesFrom opencloning_linkml:CreLoxRecombinationSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:LigationSource ; + rdfs:subClassOf opencloning_linkml:GatewaySource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:LigationSource . + owl:someValuesFrom opencloning_linkml:GatewaySource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:PlannotateAnnotationReport ; + rdfs:subClassOf opencloning_linkml:InVivoAssemblySource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:PlannotateAnnotationReport . + owl:someValuesFrom opencloning_linkml:InVivoAssemblySource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:RepositoryIdSource ; + rdfs:subClassOf opencloning_linkml:DatabaseSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:RepositoryIdSource . + owl:someValuesFrom opencloning_linkml:DatabaseSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:CollectionSource ; + rdfs:subClassOf opencloning_linkml:PolymeraseExtensionSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:CollectionSource . + owl:someValuesFrom opencloning_linkml:PolymeraseExtensionSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:InFusionSource ; + rdfs:subClassOf opencloning_linkml:BenchlingUrlSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:InFusionSource . + owl:someValuesFrom opencloning_linkml:BenchlingUrlSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:CRISPRSource ; + rdfs:subClassOf opencloning_linkml:RepositoryIdSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:CRISPRSource . + owl:someValuesFrom opencloning_linkml:RepositoryIdSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:ReverseComplementSource ; + rdfs:subClassOf opencloning_linkml:GenomeCoordinatesSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:ReverseComplementSource . + owl:someValuesFrom opencloning_linkml:GenomeCoordinatesSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:RestrictionAndLigationSource ; + rdfs:subClassOf opencloning_linkml:RestrictionEnzymeDigestionSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:RestrictionAndLigationSource . + owl:someValuesFrom opencloning_linkml:RestrictionEnzymeDigestionSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:SequencingFile ; + rdfs:subClassOf opencloning_linkml:ManuallyTypedSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:SequencingFile . + owl:someValuesFrom opencloning_linkml:ManuallyTypedSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:OpenDNACollectionsSource ; + rdfs:subClassOf opencloning_linkml:PCRSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:OpenDNACollectionsSource . + owl:someValuesFrom opencloning_linkml:PCRSource . [] a owl:Restriction ; - rdfs:subClassOf opencloning_linkml:DatabaseSource ; + rdfs:subClassOf opencloning_linkml:LigationSource ; owl:onProperty opencloning_linkml:type ; - owl:someValuesFrom opencloning_linkml:DatabaseSource . + owl:someValuesFrom opencloning_linkml:LigationSource . diff --git a/project/python/opencloning_linkml.py b/project/python/opencloning_linkml.py index 2b58108..4f4fa79 100644 --- a/project/python/opencloning_linkml.py +++ b/project/python/opencloning_linkml.py @@ -1,5 +1,5 @@ # Auto generated from opencloning_linkml.yaml by pythongen.py version: 0.0.1 -# Generation date: 2025-10-03T14:02:12 +# Generation date: 2025-10-20T16:29:27 # Schema: OpenCloning_LinkML # # id: https://opencloning.github.io/OpenCloning_LinkML diff --git a/project/shacl/opencloning_linkml.shacl.ttl b/project/shacl/opencloning_linkml.shacl.ttl index a579b05..ab569dd 100644 --- a/project/shacl/opencloning_linkml.shacl.ttl +++ b/project/shacl/opencloning_linkml.shacl.ttl @@ -8,7 +8,7 @@ schema1:Thing a sh:NodeShape ; sh:closed true ; - sh:ignoredProperties ( opencloning_linkml:sequence_file_url opencloning_linkml:coordinates opencloning_linkml:end opencloning_linkml:overhang_watson_3prime opencloning_linkml:circularize opencloning_linkml:greedy opencloning_linkml:annotation_tool opencloning_linkml:sequence rdf:type opencloning_linkml:addgene_sequence_type opencloning_linkml:options opencloning_linkml:title opencloning_linkml:index_in_file opencloning_linkml:sequence_file_format schema1:object opencloning_linkml:add_primer_features opencloning_linkml:description opencloning_linkml:user_input opencloning_linkml:annotation_tool_version opencloning_linkml:repository_id opencloning_linkml:circular opencloning_linkml:right_edge opencloning_linkml:file_name opencloning_linkml:type opencloning_linkml:image opencloning_linkml:overhang_crick_3prime opencloning_linkml:start opencloning_linkml:reaction_type opencloning_linkml:locus_tag schema1:name opencloning_linkml:primer_design opencloning_linkml:restriction_enzymes opencloning_linkml:file_content opencloning_linkml:output_name opencloning_linkml:assembly_accession opencloning_linkml:sequence_accession opencloning_linkml:category_id opencloning_linkml:strand opencloning_linkml:repository_name opencloning_linkml:annotation_report opencloning_linkml:gene_id opencloning_linkml:left_edge ) ; + sh:ignoredProperties ( opencloning_linkml:left_edge opencloning_linkml:locus_tag opencloning_linkml:image opencloning_linkml:gene_id opencloning_linkml:file_content opencloning_linkml:strand opencloning_linkml:start opencloning_linkml:type opencloning_linkml:sequence opencloning_linkml:options opencloning_linkml:circular opencloning_linkml:sequence_file_url opencloning_linkml:add_primer_features opencloning_linkml:coordinates opencloning_linkml:title opencloning_linkml:end opencloning_linkml:user_input opencloning_linkml:index_in_file opencloning_linkml:description opencloning_linkml:circularize opencloning_linkml:annotation_tool opencloning_linkml:greedy schema1:object opencloning_linkml:right_edge opencloning_linkml:annotation_report opencloning_linkml:file_name opencloning_linkml:sequence_file_format rdf:type opencloning_linkml:assembly_accession schema1:name opencloning_linkml:primer_design opencloning_linkml:overhang_watson_3prime opencloning_linkml:annotation_tool_version opencloning_linkml:restriction_enzymes opencloning_linkml:repository_name opencloning_linkml:addgene_sequence_type opencloning_linkml:category_id opencloning_linkml:reaction_type opencloning_linkml:output_name opencloning_linkml:sequence_accession opencloning_linkml:overhang_crick_3prime opencloning_linkml:repository_id ) ; sh:property [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -22,25 +22,6 @@ opencloning_linkml:AddgeneIdSource a sh:NodeShape ; sh:description "Represents the source of a sequence that is identified by an Addgene id" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "The URL of a sequence file" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:sequence_file_url ; - sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], - [ sh:datatype xsd:string ; sh:description "The id of the sequence in the repository" ; sh:maxCount 1 ; sh:minCount 1 ; @@ -52,6 +33,22 @@ opencloning_linkml:AddgeneIdSource a sh:NodeShape ; sh:minCount 1 ; sh:order 3 ; sh:path opencloning_linkml:repository_name ], + [ sh:datatype xsd:string ; + sh:description "The URL of a sequence file" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:sequence_file_url ; + sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], + [ sh:in ( "depositor-full" "addgene-full" ) ; + sh:maxCount 1 ; + sh:order 1 ; + sh:path opencloning_linkml:addgene_sequence_type ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -59,37 +56,56 @@ opencloning_linkml:AddgeneIdSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 6 ; sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path schema1:object ], - [ sh:in ( "depositor-full" "addgene-full" ) ; + [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; - sh:order 1 ; - sh:path opencloning_linkml:addgene_sequence_type ] ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path opencloning_linkml:output_name ] ; sh:targetClass opencloning_linkml:AddgeneIdSource . opencloning_linkml:AnnotationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents a computational step in which sequence features are annotated in a sequence" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path schema1:object ], + [ sh:class opencloning_linkml:AnnotationReport ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path opencloning_linkml:annotation_report ], + [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path opencloning_linkml:output_name ], - [ sh:class opencloning_linkml:AnnotationReport ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path opencloning_linkml:annotation_report ], + [ sh:in ( "plannotate" ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path opencloning_linkml:annotation_tool ], + [ sh:datatype xsd:string ; + sh:description "The version of the annotation tool" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:annotation_tool_version ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -103,41 +119,19 @@ opencloning_linkml:AnnotationSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path schema1:identifier ], - [ sh:in ( "plannotate" ) ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path opencloning_linkml:annotation_tool ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "The version of the annotation tool" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:annotation_tool_version ] ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:AnnotationSource . opencloning_linkml:AssemblyFragment a sh:NodeShape ; sh:closed true ; sh:description "Represents a fragment in an assembly" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:type ], - [ sh:maxCount 1 ; + sh:property [ sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:right_location ], @@ -145,6 +139,12 @@ opencloning_linkml:AssemblyFragment a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path opencloning_linkml:left_location ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:boolean ; sh:description "Whether the sequence is reverse complemented in the assembly" ; sh:maxCount 1 ; @@ -164,19 +164,18 @@ opencloning_linkml:AssemblyFragment a sh:NodeShape ; opencloning_linkml:AssemblySource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is an assembly of other sequences" ; - sh:ignoredProperties ( opencloning_linkml:add_primer_features opencloning_linkml:greedy opencloning_linkml:reaction_type rdf:type opencloning_linkml:restriction_enzymes ) ; - sh:property [ sh:datatype xsd:string ; + sh:ignoredProperties ( opencloning_linkml:add_primer_features rdf:type opencloning_linkml:reaction_type opencloning_linkml:restriction_enzymes opencloning_linkml:greedy ) ; + sh:property [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path schema1:object ], + [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -184,23 +183,24 @@ opencloning_linkml:AssemblySource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path schema1:object ], + sh:order 1 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path opencloning_linkml:circular ] ; + sh:path opencloning_linkml:circular ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:AssemblySource . opencloning_linkml:BenchlingUrlSource a sh:NodeShape ; @@ -208,97 +208,102 @@ opencloning_linkml:BenchlingUrlSource a sh:NodeShape ; sh:description "Represents the source of a sequence that is identified by a Benchling URL" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "The url of the gb file associated with the sequence" ; + sh:order 3 ; + sh:path opencloning_linkml:output_name ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path schema1:object ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:repository_id ; - sh:pattern "^https:\\/\\/benchling\\.com\\/.+\\.gb$" ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + sh:order 6 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:order 2 ; + sh:path opencloning_linkml:type ], [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 1 ; sh:path opencloning_linkml:repository_name ], [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + sh:description "The url of the gb file associated with the sequence" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:output_name ], + sh:order 0 ; + sh:path opencloning_linkml:repository_id ; + sh:pattern "^https:\\/\\/benchling\\.com\\/.+\\.gb$" ], [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path schema1:object ] ; + sh:order 4 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:BenchlingUrlSource . opencloning_linkml:CRISPRSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by CRISPR" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:boolean ; + sh:description "Whether the assembly is circular or not" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:circular ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path schema1:object ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:type ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:boolean ; - sh:description "Whether the assembly is circular or not" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:circular ] ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:CRISPRSource . opencloning_linkml:CloningStrategy a sh:NodeShape ; sh:closed true ; sh:description "Represents a cloning strategy" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class opencloning_linkml:AssociatedFile ; + sh:property [ sh:description "The version of the schema that was used to generate this cloning strategy" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path opencloning_linkml:schema_version ], + [ sh:class opencloning_linkml:AssociatedFile ; sh:description "Files associated with this cloning strategy" ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; @@ -308,34 +313,29 @@ opencloning_linkml:CloningStrategy a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 6 ; sh:path opencloning_linkml:backend_version ], - [ sh:description "The version of the schema that was used to generate this cloning strategy" ; + [ sh:datatype xsd:string ; + sh:description "A description of the cloning strategy" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path opencloning_linkml:schema_version ], + sh:order 3 ; + sh:path opencloning_linkml:description ], [ sh:class schema1:CreateAction ; sh:description "The sources of the sequences that are used in the cloning strategy" ; sh:minCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path opencloning_linkml:sources ], + [ sh:description "The version of the frontend that was used to generate this cloning strategy" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path opencloning_linkml:frontend_version ], [ sh:class bioschemas:DNA ; sh:description "The sequences that are used in the cloning strategy" ; sh:minCount 1 ; sh:nodeKind sh:IRI ; sh:order 0 ; sh:path opencloning_linkml:sequences ], - [ sh:datatype xsd:string ; - sh:description "A description of the cloning strategy" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:description ], - [ sh:description "The version of the frontend that was used to generate this cloning strategy" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path opencloning_linkml:frontend_version ], [ sh:class opencloning_linkml:Primer ; sh:description "The primers that are used in the cloning strategy" ; sh:nodeKind sh:IRI ; @@ -347,11 +347,11 @@ opencloning_linkml:CollectionSource a sh:NodeShape ; sh:closed true ; sh:description "Represents a collection of possible sources in a template" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class opencloning_linkml:CollectionOption ; - sh:description "The options available in this category." ; + sh:property [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path opencloning_linkml:options ], + sh:order 8 ; + sh:path schema1:object ], [ sh:datatype xsd:string ; sh:description "The identifier of the category of the part in the template" ; sh:maxCount 1 ; @@ -359,17 +359,33 @@ opencloning_linkml:CollectionSource a sh:NodeShape ; sh:order 0 ; sh:path opencloning_linkml:category_id ], [ sh:datatype xsd:string ; - sh:description "The title of the category" ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:title ], + sh:order 6 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "A description of the category" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path opencloning_linkml:description ], [ sh:datatype xsd:string ; sh:description "URL and size of the image representing this category. For images with size specification, this is a list with two elements: [url, size]." ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:image ], + [ sh:class opencloning_linkml:CollectionOption ; + sh:description "The options available in this category." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path opencloning_linkml:options ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -377,18 +393,6 @@ opencloning_linkml:CollectionSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 9 ; sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "A description of the category" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:description ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; @@ -396,33 +400,24 @@ opencloning_linkml:CollectionSource a sh:NodeShape ; sh:order 7 ; sh:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:description "The title of the category" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path opencloning_linkml:type ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path schema1:object ] ; + sh:order 1 ; + sh:path opencloning_linkml:title ] ; sh:targetClass opencloning_linkml:CollectionSource . opencloning_linkml:CreLoxRecombinationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by Cre - Lox recombination" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + sh:property [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path schema1:object ], + sh:order 2 ; + sh:path opencloning_linkml:output_name ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -430,24 +425,29 @@ opencloning_linkml:CreLoxRecombinationSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path schema1:identifier ], - [ sh:datatype xsd:boolean ; - sh:description "Whether the assembly is circular or not" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:circular ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + [ sh:datatype xsd:boolean ; + sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:output_name ] ; + sh:order 0 ; + sh:path opencloning_linkml:circular ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path schema1:object ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:CreLoxRecombinationSource . opencloning_linkml:DatabaseSource a sh:NodeShape ; @@ -460,18 +460,6 @@ opencloning_linkml:DatabaseSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path schema1:object ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -484,14 +472,31 @@ opencloning_linkml:DatabaseSource a sh:NodeShape ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; - sh:path schema1:identifier ] ; + sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path schema1:object ] ; sh:targetClass opencloning_linkml:DatabaseSource . opencloning_linkml:EuroscarfSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence from the Euroscarf plasmid library" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path opencloning_linkml:repository_name ], + [ sh:datatype xsd:string ; sh:description "The id of the plasmid in the Euroscarf plasmid library" ; sh:maxCount 1 ; sh:minCount 1 ; @@ -504,30 +509,25 @@ opencloning_linkml:EuroscarfSource a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path schema1:object ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path schema1:identifier ], + sh:order 2 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ], - [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 1 ; - sh:path opencloning_linkml:repository_name ], + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; @@ -540,29 +540,23 @@ opencloning_linkml:GatewaySource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by Gateway cloning" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "Whether to use a greedy consensus sequence for att sites (see https://github.com/manulera/GateWayMine)" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:greedy ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + sh:property [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:output_name ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path schema1:object ], + sh:order 3 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path schema1:identifier ], + [ sh:in ( "LR" "BP" ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path opencloning_linkml:reaction_type ], [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; @@ -570,23 +564,29 @@ opencloning_linkml:GatewaySource a sh:NodeShape ; sh:order 2 ; sh:path opencloning_linkml:circular ], [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:type ], + sh:order 4 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:boolean ; + sh:description "Whether to use a greedy consensus sequence for att sites (see https://github.com/manulera/GateWayMine)" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:greedy ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 7 ; - sh:path schema1:identifier ], - [ sh:in ( "LR" "BP" ) ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path opencloning_linkml:reaction_type ] ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:GatewaySource . opencloning_linkml:GenomeCoordinatesSource a sh:NodeShape ; @@ -600,19 +600,36 @@ opencloning_linkml:GenomeCoordinatesSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path opencloning_linkml:end ], + [ sh:datatype xsd:string ; + sh:description "The accession of the sequence" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:sequence_accession ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 10 ; + sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "The gene id of the sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:gene_id ], - [ sh:datatype xsd:integer ; - sh:description "The starting coordinate (1-based) of the sequence in the sequence accession" ; + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:start ], + sh:order 7 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:string ; + sh:description "The accession of the assembly" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:assembly_accession ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; @@ -620,23 +637,18 @@ opencloning_linkml:GenomeCoordinatesSource a sh:NodeShape ; sh:order 8 ; sh:path opencloning_linkml:output_name ], [ sh:datatype xsd:integer ; - sh:description "The strand of the sequence in the sequence accession, should be 1 or -1" ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path opencloning_linkml:strand ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:order 9 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path opencloning_linkml:type ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 10 ; - sh:path schema1:object ], + sh:order 11 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; sh:description "The locus tag of the sequence" ; sh:maxCount 1 ; @@ -644,80 +656,74 @@ opencloning_linkml:GenomeCoordinatesSource a sh:NodeShape ; sh:order 2 ; sh:path opencloning_linkml:locus_tag ], [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "The accession of the sequence" ; + sh:description "The starting coordinate (1-based) of the sequence in the sequence accession" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:sequence_accession ], - [ sh:datatype xsd:string ; - sh:description "The accession of the assembly" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:assembly_accession ], + sh:order 4 ; + sh:path opencloning_linkml:start ], [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + sh:description "The strand of the sequence in the sequence accession, should be 1 or -1" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path schema1:identifier ] ; + sh:order 6 ; + sh:path opencloning_linkml:strand ] ; sh:targetClass opencloning_linkml:GenomeCoordinatesSource . opencloning_linkml:GibsonAssemblySource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by Gibson assembly" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "Whether the assembly is circular or not" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:circular ], + sh:order 5 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path schema1:object ], [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:output_name ], + sh:order 1 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:order 2 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:boolean ; + sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path schema1:object ] ; + sh:order 0 ; + sh:path opencloning_linkml:circular ] ; sh:targetClass opencloning_linkml:GibsonAssemblySource . opencloning_linkml:HomologousRecombinationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by homologous recombination" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -746,32 +752,29 @@ opencloning_linkml:HomologousRecombinationSource a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ] ; + sh:path opencloning_linkml:output_name ] ; sh:targetClass opencloning_linkml:HomologousRecombinationSource . opencloning_linkml:IGEMSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence from an iGEM collection" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class schema1:Role ; + sh:property [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path opencloning_linkml:output_name ], + [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 6 ; sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "The URL of the sequence file, for now github repository" ; + [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; sh:maxCount 1 ; sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:sequence_file_url ; - sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], + sh:order 2 ; + sh:path opencloning_linkml:repository_name ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -779,6 +782,21 @@ opencloning_linkml:IGEMSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "The unique identifier of the sequence in the iGEM collection (for now, {part_id}-{plasmid_backbone})" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:repository_id ], + [ sh:datatype xsd:string ; + sh:description "The URL of the sequence file, for now github repository" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:sequence_file_url ; + sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -790,32 +808,27 @@ opencloning_linkml:IGEMSource a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:output_name ], - [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path opencloning_linkml:repository_name ], - [ sh:datatype xsd:string ; - sh:description "The unique identifier of the sequence in the iGEM collection (for now, {part_id}-{plasmid_backbone})" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:repository_id ] ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:IGEMSource . opencloning_linkml:InFusionSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by In-Fusion cloning by Takara Bio" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -833,48 +846,18 @@ opencloning_linkml:InFusionSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; - sh:path schema1:object ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ] ; + sh:path schema1:object ] ; sh:targetClass opencloning_linkml:InFusionSource . opencloning_linkml:InVivoAssemblySource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by in vivo assembly. Algorithmically equivalent to Gibson assembly." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 4 ; - sh:path schema1:object ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:boolean ; - sh:description "Whether the assembly is circular or not" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:circular ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -886,20 +869,49 @@ opencloning_linkml:InVivoAssemblySource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:type ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 4 ; + sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path schema1:identifier ] ; + sh:path schema1:identifier ], + [ sh:datatype xsd:boolean ; + sh:description "Whether the assembly is circular or not" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:circular ] ; sh:targetClass opencloning_linkml:InVivoAssemblySource . opencloning_linkml:LigationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by ligation with sticky or blunt ends." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -918,71 +930,52 @@ opencloning_linkml:LigationSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path schema1:identifier ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; - sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ] ; + sh:path schema1:object ] ; sh:targetClass opencloning_linkml:LigationSource . opencloning_linkml:ManuallyTypedSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is manually typed by the user" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:type ], - [ sh:datatype xsd:integer ; - sh:description "The equivalent of `overhang_crick_3prime` but for the watson strand" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:overhang_watson_3prime ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path schema1:identifier ], + sh:property [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 7 ; + sh:path schema1:object ], [ sh:datatype xsd:boolean ; sh:description "Whether the sequence is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:circular ], - [ sh:datatype xsd:string ; + [ sh:datatype xsd:integer ; + sh:description "Taken from pydna's `dseq::ovhg`An integer describing the length of the crick strand overhang in the 5' of the molecule, or 3' of the crick strand" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:user_input ; - sh:pattern "^[acgtACGT]+$" ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 7 ; - sh:path schema1:object ], + sh:order 0 ; + sh:path opencloning_linkml:overhang_crick_3prime ], + [ sh:datatype xsd:integer ; + sh:description "The equivalent of `overhang_crick_3prime` but for the watson strand" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:overhang_watson_3prime ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -990,12 +983,19 @@ opencloning_linkml:ManuallyTypedSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path opencloning_linkml:user_input ; + sh:pattern "^[acgtACGT]+$" ], [ sh:datatype xsd:integer ; - sh:description "Taken from pydna's `dseq::ovhg`An integer describing the length of the crick strand overhang in the 5' of the molecule, or 3' of the crick strand" ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:overhang_crick_3prime ] ; + sh:order 6 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:ManuallyTypedSource . opencloning_linkml:OligoHybridizationSource a sh:NodeShape ; @@ -1009,10 +1009,11 @@ opencloning_linkml:OligoHybridizationSource a sh:NodeShape ; sh:order 2 ; sh:path opencloning_linkml:output_name ], [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; + sh:order 5 ; sh:path schema1:identifier ], [ sh:datatype xsd:integer ; sh:description "Taken from pydna's `dseq::ovhg`An integer describing the length of the crick strand overhang in the 5' of the molecule, or 3' of the crick strand" ; @@ -1026,36 +1027,30 @@ opencloning_linkml:OligoHybridizationSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:type ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path schema1:identifier ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; - sh:path schema1:object ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ] ; + sh:path schema1:object ] ; sh:targetClass opencloning_linkml:OligoHybridizationSource . opencloning_linkml:OpenDNACollectionsSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence from the Open DNA collections" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:property [ sh:datatype xsd:string ; + sh:description "Subpath of the sequence in the Open DNA collections repository" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:type ], + sh:order 1 ; + sh:path opencloning_linkml:repository_id ], [ sh:datatype xsd:string ; sh:description "The URL of a sequence file" ; sh:maxCount 1 ; @@ -1063,22 +1058,11 @@ opencloning_linkml:OpenDNACollectionsSource a sh:NodeShape ; sh:order 0 ; sh:path opencloning_linkml:sequence_file_url ; sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:output_name ], [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 2 ; sh:path opencloning_linkml:repository_name ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -1086,25 +1070,48 @@ opencloning_linkml:OpenDNACollectionsSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path schema1:object ], [ sh:datatype xsd:string ; - sh:description "Subpath of the sequence in the Open DNA collections repository" ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:repository_id ] ; + sh:order 4 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path opencloning_linkml:type ] ; sh:targetClass opencloning_linkml:OpenDNACollectionsSource . opencloning_linkml:OverlapExtensionPCRLigationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by ligation of PCR products as part of overlap extension PCR. Algorithmically equivalent to Gibson assembly." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; - sh:description "Whether the assembly is circular or not" ; + sh:property [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:circular ], + sh:order 1 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 5 ; + sh:path schema1:identifier ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; @@ -1116,25 +1123,18 @@ opencloning_linkml:OverlapExtensionPCRLigationSource a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 4 ; sh:path schema1:object ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + [ sh:datatype xsd:boolean ; + sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ] ; + sh:order 0 ; + sh:path opencloning_linkml:circular ] ; sh:targetClass opencloning_linkml:OverlapExtensionPCRLigationSource . opencloning_linkml:PCRSource a sh:NodeShape ; @@ -1146,36 +1146,36 @@ opencloning_linkml:PCRSource a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path schema1:object ], - [ sh:datatype xsd:boolean ; - sh:description "Whether to add primer features to the PCR product" ; + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:add_primer_features ], + sh:order 2 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ], [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:circular ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + [ sh:datatype xsd:boolean ; + sh:description "Whether to add primer features to the PCR product" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:order 0 ; + sh:path opencloning_linkml:add_primer_features ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -1189,51 +1189,41 @@ opencloning_linkml:PlannotateAnnotationReport a sh:NodeShape ; sh:closed true ; sh:description "Represents a report of an annotation step using Plannotate" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; + sh:property [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:start_location ], + sh:order 9 ; + sh:path opencloning_linkml:database ], [ sh:datatype xsd:float ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:percent_identity ], - [ sh:datatype xsd:integer ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:strand ], + sh:order 7 ; + sh:path opencloning_linkml:percent_match_length ], [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path opencloning_linkml:length_of_found_feature ], - [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path opencloning_linkml:database ], + sh:order 5 ; + sh:path opencloning_linkml:full_length_of_feature_in_db ], [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:end_location ], - [ sh:datatype xsd:integer ; + [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path opencloning_linkml:full_length_of_feature_in_db ], + sh:order 11 ; + sh:path opencloning_linkml:Type ], [ sh:datatype xsd:boolean ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 8 ; sh:path opencloning_linkml:fragment ], - [ sh:datatype xsd:string ; + [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 11 ; - sh:path opencloning_linkml:Type ], + sh:order 1 ; + sh:path opencloning_linkml:start_location ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -1242,29 +1232,39 @@ opencloning_linkml:PlannotateAnnotationReport a sh:NodeShape ; [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 13 ; - sh:path opencloning_linkml:sequence ], + sh:order 12 ; + sh:path opencloning_linkml:Description ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 10 ; - sh:path opencloning_linkml:Feature ], - [ sh:datatype xsd:float ; + sh:order 13 ; + sh:path opencloning_linkml:sequence ], + [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path opencloning_linkml:percent_match_length ], - [ sh:datatype xsd:string ; + sh:order 3 ; + sh:path opencloning_linkml:strand ], + [ sh:datatype xsd:integer ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 12 ; - sh:path opencloning_linkml:Description ], + sh:order 6 ; + sh:path opencloning_linkml:length_of_found_feature ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 14 ; - sh:path opencloning_linkml:type ] ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:float ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path opencloning_linkml:percent_identity ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 10 ; + sh:path opencloning_linkml:Feature ] ; sh:targetClass opencloning_linkml:PlannotateAnnotationReport . opencloning_linkml:PolymeraseExtensionSource a sh:NodeShape ; @@ -1272,6 +1272,17 @@ opencloning_linkml:PolymeraseExtensionSource a sh:NodeShape ; sh:description "Represents the source of a sequence that is generated by polymerase extension" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path schema1:object ], + [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; @@ -1289,18 +1300,7 @@ opencloning_linkml:PolymeraseExtensionSource a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path schema1:object ] ; + sh:path opencloning_linkml:output_name ] ; sh:targetClass opencloning_linkml:PolymeraseExtensionSource . opencloning_linkml:RepositoryIdSource a sh:NodeShape ; @@ -1308,11 +1308,30 @@ opencloning_linkml:RepositoryIdSource a sh:NodeShape ; sh:description "Represents the source of a sequence that is identified by a repository id" ; sh:ignoredProperties ( opencloning_linkml:sequence_file_url opencloning_linkml:addgene_sequence_type rdf:type ) ; sh:property [ sh:datatype xsd:string ; + sh:description "The id of the sequence in the repository" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:repository_id ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -1325,55 +1344,40 @@ opencloning_linkml:RepositoryIdSource a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "The id of the sequence in the repository" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:repository_id ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path opencloning_linkml:repository_name ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ] ; + sh:minCount 1 ; + sh:order 1 ; + sh:path opencloning_linkml:repository_name ] ; sh:targetClass opencloning_linkml:RepositoryIdSource . opencloning_linkml:RestrictionAndLigationSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is generated by restriction and ligation" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + sh:property [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:output_name ], + sh:order 6 ; + sh:path schema1:identifier ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path schema1:object ], + [ sh:datatype xsd:string ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path schema1:identifier ], + sh:order 0 ; + sh:path opencloning_linkml:restriction_enzymes ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -1381,15 +1385,11 @@ opencloning_linkml:RestrictionAndLigationSource a sh:NodeShape ; sh:order 2 ; sh:path opencloning_linkml:type ], [ sh:datatype xsd:string ; - sh:minCount 1 ; + sh:description "Used to specify the name of the output sequence" ; + sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:restriction_enzymes ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path schema1:object ], + sh:order 3 ; + sh:path opencloning_linkml:output_name ], [ sh:datatype xsd:boolean ; sh:description "Whether the assembly is circular or not" ; sh:maxCount 1 ; @@ -1402,17 +1402,18 @@ opencloning_linkml:RestrictionEnzymeDigestionSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is a subfragment of another sequence, generated by sequence cutting using restriction enzymes." ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class opencloning_linkml:RestrictionSequenceCut ; + sh:property [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 0 ; - sh:path opencloning_linkml:left_edge ], + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ], [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ], + sh:order 3 ; + sh:path opencloning_linkml:output_name ], [ sh:datatype xsd:integer ; sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; @@ -1420,64 +1421,63 @@ opencloning_linkml:RestrictionEnzymeDigestionSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 6 ; sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path opencloning_linkml:type ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], [ sh:class opencloning_linkml:RestrictionSequenceCut ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; - sh:path opencloning_linkml:right_edge ] ; + sh:path opencloning_linkml:right_edge ], + [ sh:class opencloning_linkml:RestrictionSequenceCut ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 0 ; + sh:path opencloning_linkml:left_edge ] ; sh:targetClass opencloning_linkml:RestrictionEnzymeDigestionSource . opencloning_linkml:ReverseComplementSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the in-silico transformation of a sequence into its reverse complement" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:string ; + sh:property [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path opencloning_linkml:type ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path schema1:object ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path schema1:object ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; - sh:path opencloning_linkml:output_name ] ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:ReverseComplementSource . opencloning_linkml:SEVASource a sh:NodeShape ; @@ -1489,12 +1489,20 @@ opencloning_linkml:SEVASource a sh:NodeShape ; sh:minCount 1 ; sh:order 2 ; sh:path opencloning_linkml:repository_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 5 ; - sh:path schema1:identifier ], + sh:order 4 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "The SEVA plasmid name" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:repository_id ; + sh:pattern "^pSEVA\\d+.*$" ], [ sh:datatype xsd:string ; sh:description "The URL of the sequence file, which can refer to a a gb file hosted on the SEVA website or an entry in the NCBI." ; sh:maxCount 1 ; @@ -1509,14 +1517,6 @@ opencloning_linkml:SEVASource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "The SEVA plasmid name" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:repository_id ; - sh:pattern "^pSEVA\\d+.*$" ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; @@ -1529,12 +1529,12 @@ opencloning_linkml:SEVASource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 7 ; sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:output_name ] ; + sh:order 5 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:SEVASource . opencloning_linkml:SequenceCutSource a sh:NodeShape ; @@ -1546,41 +1546,41 @@ opencloning_linkml:SequenceCutSource a sh:NodeShape ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 0 ; sh:path opencloning_linkml:left_edge ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; sh:description "The id of an entity in a database" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 6 ; + sh:path schema1:identifier ], [ sh:class opencloning_linkml:SequenceCut ; sh:maxCount 1 ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 1 ; sh:path opencloning_linkml:right_edge ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 5 ; - sh:path schema1:object ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 2 ; + sh:path opencloning_linkml:type ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 6 ; - sh:path schema1:identifier ] ; + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 5 ; + sh:path schema1:object ] ; sh:targetClass opencloning_linkml:SequenceCutSource . opencloning_linkml:SequencingFile a sh:NodeShape ; @@ -1588,13 +1588,6 @@ opencloning_linkml:SequencingFile a sh:NodeShape ; sh:description "Represents a sequencing file and its alignment to a sequence" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; - sh:description "The name of the file" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:file_name ], - [ sh:datatype xsd:string ; sh:description "The alignment of the sequencing read to the sequence. List of strings representing aligned sequences." ; sh:minCount 1 ; sh:nodeKind sh:Literal ; @@ -1608,17 +1601,24 @@ opencloning_linkml:SequencingFile a sh:NodeShape ; sh:order 2 ; sh:path opencloning_linkml:sequence_id ], [ sh:datatype xsd:string ; - sh:description "Designates the class" ; + sh:description "The name of the file" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:type ], + sh:order 3 ; + sh:path opencloning_linkml:file_name ], [ sh:description "The type of file" ; sh:in ( NCIT:C171177 ) ; sh:maxCount 1 ; sh:minCount 1 ; sh:order 4 ; - sh:path opencloning_linkml:file_type ] ; + sh:path opencloning_linkml:file_type ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:type ] ; sh:targetClass opencloning_linkml:SequencingFile . opencloning_linkml:SnapGenePlasmidSource a sh:NodeShape ; @@ -1626,48 +1626,48 @@ opencloning_linkml:SnapGenePlasmidSource a sh:NodeShape ; sh:description "Represents the source of a sequence from the SnapGene plasmid library identified by a SnapGene subpath of https://www.snapgene.com/plasmids/" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + sh:description "The id of an entity in a database" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 6 ; + sh:order 4 ; sh:path schema1:identifier ], - [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; + [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 1 ; - sh:path opencloning_linkml:repository_name ], + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path opencloning_linkml:output_name ], [ sh:class schema1:Role ; sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; sh:nodeKind sh:BlankNodeOrIRI ; sh:order 5 ; sh:path schema1:object ], [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; + sh:description "The subpath of the plasmid in the SnapGene plasmid library. Requesting the plasmid is possible with https://www.snapgene.com/local/fetch.php?set={category_path}&plasmid={plasmid['subpath']} where category_path is the left part of the subpath before the first / and plasmid is the subpath after the /." ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], + sh:order 0 ; + sh:path opencloning_linkml:repository_id ; + sh:pattern "^.+\\/.+$" ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "The subpath of the plasmid in the SnapGene plasmid library. Requesting the plasmid is possible with https://www.snapgene.com/local/fetch.php?set={category_path}&plasmid={plasmid['subpath']} where category_path is the left part of the subpath before the first / and plasmid is the subpath after the /." ; + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:repository_id ; - sh:pattern "^.+\\/.+$" ] ; + sh:order 6 ; + sh:path schema1:identifier ], + [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 1 ; + sh:path opencloning_linkml:repository_name ] ; sh:targetClass opencloning_linkml:SnapGenePlasmidSource . opencloning_linkml:TemplateSequence a sh:NodeShape ; @@ -1681,12 +1681,6 @@ opencloning_linkml:TemplateSequence a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 2 ; sh:path schema1:identifier ], - [ sh:datatype xsd:string ; - sh:description "Designates the class" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 3 ; - sh:path opencloning_linkml:type ], [ sh:datatype xsd:string ; sh:description "Can be used to indicate the intended primer design for this sequence in the template" ; sh:maxCount 1 ; @@ -1698,37 +1692,36 @@ opencloning_linkml:TemplateSequence a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; - sh:path opencloning_linkml:circular ] ; + sh:path opencloning_linkml:circular ], + [ sh:datatype xsd:string ; + sh:description "Designates the class" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 3 ; + sh:path opencloning_linkml:type ] ; sh:targetClass opencloning_linkml:TemplateSequence . opencloning_linkml:TextFileSequence a sh:NodeShape ; sh:closed true ; sh:description "A sequence (may have features) defined by the content of a text file" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "The equivalent of `overhang_crick_3prime` but for the watson strand" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 2 ; - sh:path opencloning_linkml:overhang_watson_3prime ], + sh:property [ sh:description "The format of a sequence file" ; + sh:in ( "fasta" "genbank" "snapgene" "embl" ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 0 ; + sh:path opencloning_linkml:sequence_file_format ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:file_content ], - [ sh:description "The format of a sequence file" ; - sh:in ( "fasta" "genbank" "snapgene" "embl" ) ; + [ sh:datatype xsd:integer ; + sh:description "Taken from pydna's `dseq::ovhg`An integer describing the length of the crick strand overhang in the 5' of the molecule, or 3' of the crick strand" ; sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 0 ; - sh:path opencloning_linkml:sequence_file_format ], + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:overhang_crick_3prime ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -1736,30 +1729,47 @@ opencloning_linkml:TextFileSequence a sh:NodeShape ; sh:order 5 ; sh:path opencloning_linkml:type ], [ sh:datatype xsd:integer ; - sh:description "Taken from pydna's `dseq::ovhg`An integer describing the length of the crick strand overhang in the 5' of the molecule, or 3' of the crick strand" ; + sh:description "The equivalent of `overhang_crick_3prime` but for the watson strand" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:overhang_crick_3prime ] ; + sh:order 2 ; + sh:path opencloning_linkml:overhang_watson_3prime ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:TextFileSequence . opencloning_linkml:UploadedFileSource a sh:NodeShape ; sh:closed true ; sh:description "Represents the source of a sequence that is uploaded as a file" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:boolean ; + sh:property [ sh:datatype xsd:string ; + sh:description "The name of the file" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:file_name ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 7 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:boolean ; sh:description "Whether the sequence should be circularized (FASTA only)" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path opencloning_linkml:circularize ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; + [ sh:description "If provided, coordinates within the sequence of the file to extract a subsequence" ; sh:maxCount 1 ; - sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 9 ; - sh:path schema1:identifier ], + sh:order 4 ; + sh:path opencloning_linkml:coordinates ], [ sh:datatype xsd:integer ; sh:description "The index of the sequence in the file" ; sh:maxCount 1 ; @@ -1772,40 +1782,30 @@ opencloning_linkml:UploadedFileSource a sh:NodeShape ; sh:minCount 1 ; sh:order 0 ; sh:path opencloning_linkml:sequence_file_format ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 8 ; - sh:path schema1:object ], - [ sh:datatype xsd:string ; - sh:description "The name of the file" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:file_name ], [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 6 ; sh:path opencloning_linkml:output_name ], - [ sh:description "If provided, coordinates within the sequence of the file to extract a subsequence" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:coordinates ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 5 ; - sh:path opencloning_linkml:type ] ; + sh:path opencloning_linkml:type ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 8 ; + sh:path schema1:object ], + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 9 ; + sh:path schema1:identifier ] ; sh:targetClass opencloning_linkml:UploadedFileSource . opencloning_linkml:WekWikGeneIdSource a sh:NodeShape ; @@ -1813,6 +1813,25 @@ opencloning_linkml:WekWikGeneIdSource a sh:NodeShape ; sh:description "Represents the source of a sequence that is identified by a WeKwikGene id" ; sh:ignoredProperties ( rdf:type ) ; sh:property [ sh:datatype xsd:string ; + sh:description "Used to specify the name of the output sequence" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path opencloning_linkml:output_name ], + [ sh:datatype xsd:string ; + sh:description "The id of the gene in the WeKwikGene database" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path opencloning_linkml:repository_id ; + sh:pattern "^\\d+$" ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 6 ; + sh:path schema1:object ], + [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -1824,23 +1843,6 @@ opencloning_linkml:WekWikGeneIdSource a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 5 ; sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 7 ; - sh:path schema1:identifier ], - [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:order 2 ; - sh:path opencloning_linkml:repository_name ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 6 ; - sh:path schema1:object ], [ sh:datatype xsd:string ; sh:description "The URL of a sequence file" ; sh:maxCount 1 ; @@ -1848,26 +1850,24 @@ opencloning_linkml:WekWikGeneIdSource a sh:NodeShape ; sh:order 0 ; sh:path opencloning_linkml:sequence_file_url ; sh:pattern "^https?:\\/\\/(www\\.)?[-a-zA-Z0-9@:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b([-a-zA-Z0-9()@:%_\\+.~#?&//=]*)$" ], - [ sh:datatype xsd:string ; - sh:description "Used to specify the name of the output sequence" ; + [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; sh:maxCount 1 ; + sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path opencloning_linkml:output_name ], - [ sh:datatype xsd:string ; - sh:description "The id of the gene in the WeKwikGene database" ; + sh:order 7 ; + sh:path schema1:identifier ], + [ sh:in ( "addgene" "genbank" "benchling" "snapgene" "euroscarf" "igem" "wekwikgene" "seva" "open_dna_collections" ) ; sh:maxCount 1 ; sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:repository_id ; - sh:pattern "^\\d+$" ] ; + sh:order 2 ; + sh:path opencloning_linkml:repository_name ] ; sh:targetClass opencloning_linkml:WekWikGeneIdSource . opencloning_linkml:AnnotationReport a sh:NodeShape ; sh:closed true ; sh:description "Represents a report of an annotation step" ; - sh:ignoredProperties ( opencloning_linkml:sseqid opencloning_linkml:percent_match_length opencloning_linkml:Type opencloning_linkml:Description opencloning_linkml:fragment opencloning_linkml:database opencloning_linkml:strand opencloning_linkml:end_location opencloning_linkml:sequence opencloning_linkml:percent_identity rdf:type opencloning_linkml:start_location opencloning_linkml:full_length_of_feature_in_db opencloning_linkml:Feature opencloning_linkml:length_of_found_feature ) ; + sh:ignoredProperties ( opencloning_linkml:sequence opencloning_linkml:Feature opencloning_linkml:Description opencloning_linkml:strand opencloning_linkml:fragment rdf:type opencloning_linkml:end_location opencloning_linkml:length_of_found_feature opencloning_linkml:start_location opencloning_linkml:sseqid opencloning_linkml:full_length_of_feature_in_db opencloning_linkml:Type opencloning_linkml:percent_match_length opencloning_linkml:percent_identity opencloning_linkml:database ) ; sh:property [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -1879,52 +1879,52 @@ opencloning_linkml:AnnotationReport a sh:NodeShape ; opencloning_linkml:AssociatedFile a sh:NodeShape ; sh:closed true ; sh:description "Represents a file associated with a sequence" ; - sh:ignoredProperties ( opencloning_linkml:alignment rdf:type ) ; - sh:property [ sh:description "The type of file" ; - sh:in ( NCIT:C171177 ) ; + sh:ignoredProperties ( rdf:type opencloning_linkml:alignment ) ; + sh:property [ sh:class bioschemas:DNA ; + sh:description "The sequence this file is associated with" ; sh:maxCount 1 ; sh:minCount 1 ; - sh:order 3 ; - sh:path opencloning_linkml:file_type ], + sh:nodeKind sh:IRI ; + sh:order 1 ; + sh:path opencloning_linkml:sequence_id ], [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 0 ; sh:path opencloning_linkml:type ], + [ sh:description "The type of file" ; + sh:in ( NCIT:C171177 ) ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:order 3 ; + sh:path opencloning_linkml:file_type ], [ sh:datatype xsd:string ; sh:description "The name of the file" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; - sh:path opencloning_linkml:file_name ], - [ sh:class bioschemas:DNA ; - sh:description "The sequence this file is associated with" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:IRI ; - sh:order 1 ; - sh:path opencloning_linkml:sequence_id ] ; + sh:path opencloning_linkml:file_name ] ; sh:targetClass opencloning_linkml:AssociatedFile . opencloning_linkml:CollectionOption a sh:NodeShape ; sh:closed true ; sh:description "Represents an option in a collection" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:class schema1:CreateAction ; + sh:property [ sh:class opencloning_linkml:CollectionOptionInfo ; + sh:description "Additional information about this option" ; + sh:maxCount 1 ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 2 ; + sh:path opencloning_linkml:info ], + [ sh:class schema1:CreateAction ; sh:description "The source of the sequence for this option" ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:IRI ; sh:order 1 ; sh:path opencloning_linkml:source ], - [ sh:class opencloning_linkml:CollectionOptionInfo ; - sh:description "Additional information about this option" ; - sh:maxCount 1 ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 2 ; - sh:path opencloning_linkml:info ], [ sh:datatype xsd:string ; sh:description "A human-readable name for a thing" ; sh:maxCount 1 ; @@ -1938,7 +1938,12 @@ opencloning_linkml:CollectionOptionInfo a sh:NodeShape ; sh:closed true ; sh:description "Additional information about a collection option" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; + sh:property [ sh:description "The type of the option, this is redundant with the type of the source, and could be removed." ; + sh:in ( "OligoPair" "AddgenePlasmid" ) ; + sh:maxCount 1 ; + sh:order 2 ; + sh:path opencloning_linkml:type ], + [ sh:datatype xsd:string ; sh:description "A description of the option" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -1950,11 +1955,6 @@ opencloning_linkml:CollectionOptionInfo a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 4 ; sh:path opencloning_linkml:well ], - [ sh:description "The type of the option, this is redundant with the type of the source, and could be removed." ; - sh:in ( "OligoPair" "AddgenePlasmid" ) ; - sh:maxCount 1 ; - sh:order 2 ; - sh:path opencloning_linkml:type ], [ sh:datatype xsd:string ; sh:description "The antibiotic resistance of the plasmid" ; sh:maxCount 1 ; @@ -1980,6 +1980,18 @@ opencloning_linkml:Primer a sh:NodeShape ; sh:nodeKind sh:Literal ; sh:order 3 ; sh:path schema1:identifier ], + [ sh:datatype xsd:integer ; + sh:description "The id of an entity in a database" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 1 ; + sh:path schema1:identifier ], + [ sh:datatype xsd:string ; + sh:description "A human-readable name for a thing" ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path schema1:name ], [ sh:datatype xsd:string ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -1991,26 +2003,26 @@ opencloning_linkml:Primer a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 4 ; - sh:path opencloning_linkml:type ], - [ sh:datatype xsd:string ; - sh:description "A human-readable name for a thing" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path schema1:name ], - [ sh:datatype xsd:integer ; - sh:description "The id of an entity in a database" ; - sh:maxCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path schema1:identifier ] ; + sh:path opencloning_linkml:type ] ; sh:targetClass opencloning_linkml:Primer . schema1:CreateAction a sh:NodeShape ; sh:closed false ; sh:description "Represents the source of a sequence" ; - sh:ignoredProperties ( opencloning_linkml:sequence_file_url opencloning_linkml:coordinates opencloning_linkml:end opencloning_linkml:overhang_watson_3prime opencloning_linkml:circularize opencloning_linkml:greedy opencloning_linkml:annotation_tool rdf:type opencloning_linkml:addgene_sequence_type opencloning_linkml:options opencloning_linkml:title opencloning_linkml:index_in_file opencloning_linkml:sequence_file_format opencloning_linkml:add_primer_features opencloning_linkml:description opencloning_linkml:user_input opencloning_linkml:annotation_tool_version opencloning_linkml:repository_id opencloning_linkml:circular opencloning_linkml:right_edge opencloning_linkml:file_name opencloning_linkml:image opencloning_linkml:overhang_crick_3prime opencloning_linkml:start opencloning_linkml:reaction_type opencloning_linkml:locus_tag opencloning_linkml:restriction_enzymes opencloning_linkml:assembly_accession opencloning_linkml:sequence_accession opencloning_linkml:category_id opencloning_linkml:strand opencloning_linkml:repository_name opencloning_linkml:annotation_report opencloning_linkml:gene_id opencloning_linkml:left_edge ) ; - sh:property [ sh:datatype xsd:string ; + sh:ignoredProperties ( opencloning_linkml:left_edge opencloning_linkml:locus_tag opencloning_linkml:image opencloning_linkml:gene_id opencloning_linkml:strand opencloning_linkml:start opencloning_linkml:options opencloning_linkml:circular opencloning_linkml:sequence_file_url opencloning_linkml:add_primer_features opencloning_linkml:coordinates opencloning_linkml:title opencloning_linkml:end opencloning_linkml:user_input opencloning_linkml:index_in_file opencloning_linkml:description opencloning_linkml:overhang_crick_3prime opencloning_linkml:circularize opencloning_linkml:annotation_tool opencloning_linkml:greedy opencloning_linkml:right_edge opencloning_linkml:annotation_report opencloning_linkml:file_name opencloning_linkml:sequence_file_format rdf:type opencloning_linkml:assembly_accession opencloning_linkml:overhang_watson_3prime opencloning_linkml:annotation_tool_version opencloning_linkml:restriction_enzymes opencloning_linkml:repository_name opencloning_linkml:addgene_sequence_type opencloning_linkml:category_id opencloning_linkml:reaction_type opencloning_linkml:sequence_accession opencloning_linkml:repository_id ) ; + sh:property [ sh:datatype xsd:integer ; + sh:description "A unique identifier for a thing" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 4 ; + sh:path schema1:identifier ], + [ sh:class schema1:Role ; + sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; + sh:nodeKind sh:BlankNodeOrIRI ; + sh:order 3 ; + sh:path schema1:object ], + [ sh:datatype xsd:string ; sh:description "Used to specify the name of the output sequence" ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; @@ -2027,38 +2039,26 @@ schema1:CreateAction a sh:NodeShape ; sh:maxCount 1 ; sh:nodeKind sh:Literal ; sh:order 2 ; - sh:path schema1:identifier ], - [ sh:datatype xsd:integer ; - sh:description "A unique identifier for a thing" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 4 ; - sh:path schema1:identifier ], - [ sh:class schema1:Role ; - sh:description "The inputs to this source. If the source represents external import of a sequence, it's empty." ; - sh:nodeKind sh:BlankNodeOrIRI ; - sh:order 3 ; - sh:path schema1:object ] ; + sh:path schema1:identifier ] ; sh:targetClass schema1:CreateAction . opencloning_linkml:RestrictionSequenceCut a sh:NodeShape ; sh:closed true ; sh:description "Represents a cut in a DNA sequence that is made by a restriction enzyme" ; sh:ignoredProperties ( rdf:type ) ; - sh:property [ sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:restriction_enzyme ], - [ sh:datatype xsd:integer ; + sh:property [ sh:datatype xsd:integer ; sh:description "The position of the cut in the watson strand. The cut is made before the base at this position (zero-based), so that cut position 1 cuts after the first base." ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; sh:order 1 ; sh:path opencloning_linkml:cut_watson ], + [ sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:nodeKind sh:Literal ; + sh:order 0 ; + sh:path opencloning_linkml:restriction_enzyme ], [ sh:datatype xsd:integer ; sh:description "The length of the overhang that is left after the cut. It can be negative, same meaning as in pydna's `dseq::ovhg` and biopython's `Bio.Restriction.RestrictionType.ovhg`." ; sh:maxCount 1 ; @@ -2073,25 +2073,25 @@ opencloning_linkml:SequenceCut a sh:NodeShape ; sh:description "Represents a cut in a DNA sequence" ; sh:ignoredProperties ( opencloning_linkml:restriction_enzyme rdf:type ) ; sh:property [ sh:datatype xsd:integer ; - sh:description "The length of the overhang that is left after the cut. It can be negative, same meaning as in pydna's `dseq::ovhg` and biopython's `Bio.Restriction.RestrictionType.ovhg`." ; + sh:description "The position of the cut in the watson strand. The cut is made before the base at this position (zero-based), so that cut position 1 cuts after the first base." ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 1 ; - sh:path opencloning_linkml:overhang ], + sh:order 0 ; + sh:path opencloning_linkml:cut_watson ], [ sh:datatype xsd:integer ; - sh:description "The position of the cut in the watson strand. The cut is made before the base at this position (zero-based), so that cut position 1 cuts after the first base." ; + sh:description "The length of the overhang that is left after the cut. It can be negative, same meaning as in pydna's `dseq::ovhg` and biopython's `Bio.Restriction.RestrictionType.ovhg`." ; sh:maxCount 1 ; sh:minCount 1 ; sh:nodeKind sh:Literal ; - sh:order 0 ; - sh:path opencloning_linkml:cut_watson ] ; + sh:order 1 ; + sh:path opencloning_linkml:overhang ] ; sh:targetClass opencloning_linkml:SequenceCut . bioschemas:DNA a sh:NodeShape ; sh:closed false ; sh:description "Represents a sequence" ; - sh:ignoredProperties ( opencloning_linkml:file_content opencloning_linkml:overhang_watson_3prime opencloning_linkml:overhang_crick_3prime opencloning_linkml:sequence schema1:name rdf:type opencloning_linkml:circular opencloning_linkml:sequence_file_format opencloning_linkml:primer_design ) ; + sh:ignoredProperties ( opencloning_linkml:circular opencloning_linkml:sequence opencloning_linkml:sequence_file_format opencloning_linkml:file_content rdf:type opencloning_linkml:overhang_crick_3prime schema1:name opencloning_linkml:primer_design opencloning_linkml:overhang_watson_3prime ) ; sh:property [ sh:datatype xsd:string ; sh:description "Designates the class" ; sh:maxCount 1 ; @@ -2110,7 +2110,7 @@ bioschemas:DNA a sh:NodeShape ; schema1:Role a sh:NodeShape ; sh:closed true ; sh:description "Represents an input to a source" ; - sh:ignoredProperties ( opencloning_linkml:reverse_complemented opencloning_linkml:left_location rdf:type opencloning_linkml:right_location ) ; + sh:ignoredProperties ( opencloning_linkml:reverse_complemented opencloning_linkml:right_location rdf:type opencloning_linkml:left_location ) ; sh:property [ sh:class bioschemas:DNA ; sh:description "The input sequence" ; sh:maxCount 1 ; diff --git a/src/opencloning_linkml/datamodel/_models.py b/src/opencloning_linkml/datamodel/_models.py index eb617c0..d420572 100644 --- a/src/opencloning_linkml/datamodel/_models.py +++ b/src/opencloning_linkml/datamodel/_models.py @@ -590,7 +590,7 @@ class Source(NamedThing): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -650,7 +650,7 @@ class DatabaseSource(Source): json_schema_extra={"linkml_meta": {"alias": "output_name", "domain_of": ["Source"]}}, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -735,7 +735,7 @@ class CollectionSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -964,7 +964,7 @@ class ManuallyTypedSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1066,7 +1066,7 @@ class UploadedFileSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1130,7 +1130,7 @@ class RepositoryIdSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1214,7 +1214,7 @@ class AddgeneIdSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1320,7 +1320,7 @@ class WekWikGeneIdSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1448,7 +1448,7 @@ class SEVASource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1551,7 +1551,7 @@ class BenchlingUrlSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1648,7 +1648,7 @@ class SnapGenePlasmidSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1736,7 +1736,7 @@ class EuroscarfSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1847,7 +1847,7 @@ class IGEMSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -1952,7 +1952,7 @@ class OpenDNACollectionsSource(RepositoryIdSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2059,7 +2059,7 @@ class GenomeCoordinatesSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2132,7 +2132,7 @@ class SequenceCutSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2205,7 +2205,7 @@ class RestrictionEnzymeDigestionSource(SequenceCutSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2315,7 +2315,7 @@ class AssemblySource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2387,7 +2387,7 @@ class PCRSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2452,7 +2452,7 @@ class LigationSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2517,7 +2517,7 @@ class HomologousRecombinationSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2582,7 +2582,7 @@ class GibsonAssemblySource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2647,7 +2647,7 @@ class InFusionSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2712,7 +2712,7 @@ class OverlapExtensionPCRLigationSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2777,7 +2777,7 @@ class InVivoAssemblySource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2857,7 +2857,7 @@ class RestrictionAndLigationSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2932,7 +2932,7 @@ class GatewaySource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -2997,7 +2997,7 @@ class CreLoxRecombinationSource(AssemblySource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -3062,7 +3062,7 @@ class CRISPRSource(HomologousRecombinationSource): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -3127,7 +3127,7 @@ class OligoHybridizationSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -3182,7 +3182,7 @@ class PolymeraseExtensionSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -3458,7 +3458,7 @@ class AnnotationSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, ) @@ -3513,7 +3513,7 @@ class ReverseComplementSource(Source): }, ) input: Optional[list[Union[SourceInput, AssemblyFragment]]] = Field( - default=None, + default_factory=list, description="""The inputs to this source. If the source represents external import of a sequence, it's empty.""", json_schema_extra={"linkml_meta": {"alias": "input", "domain_of": ["Source"], "slot_uri": "schema:object"}}, )