diff --git a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.jsonld b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.jsonld index 17efd50..0918d15 100644 --- a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.jsonld +++ b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.jsonld @@ -4,12 +4,12 @@ "@type" : "sbol:Component", "description" : "Transcriptional terminator consisting of a 64 bp stem-loop", "displayId" : "BBa_B0010", - "hasSequence" : "BBa_B0010/sequence_1", + "hasSequence" : "BBa_B0010_sequence_1", "name" : "BBa_B0010", "role" : "SO:0000141", "type" : "SBO:0000251" }, { - "@id" : "BBa_B0010/sequence_1", + "@id" : "BBa_B0010_sequence_1", "@type" : "sbol:Sequence", "description" : "BBa_B0010 sequence", "displayId" : "sequence_1", @@ -21,12 +21,12 @@ "@type" : "sbol:Component", "description" : "Double terminator consisting of BBa_B0010 and BBa_B0012", "displayId" : "BBa_B0012", - "hasSequence" : "BBa_B0012/sequence_1", + "hasSequence" : "BBa_B0012_sequence_1", "name" : "BBa_B0012", "role" : "SO:0000141", "type" : "SBO:0000251" }, { - "@id" : "BBa_B0012/sequence_1", + "@id" : "BBa_B0012_sequence_1", "@type" : "sbol:Sequence", "description" : "BBa_B0012 sequence", "displayId" : "sequence_1", @@ -39,18 +39,10 @@ "description" : "Double terminator consisting of BBa_B0010 and BBa_B0012", "displayId" : "BBa_B0015", "hasFeature" : [ "BBa_B0015/subcomponent_1", "BBa_B0015/subcomponent_2" ], - "hasSequence" : "BBa_B0015/sequence_1", + "hasSequence" : "BBa_B0015_sequence_1", "name" : "BBa_B0015", "role" : "SO:0000141", "type" : "SBO:0000251" - }, { - "@id" : "BBa_B0015/sequence_1", - "@type" : "sbol:Sequence", - "description" : "BBa_B0015 sequence", - "displayId" : "sequence_1", - "elements" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "BBa_B0015" }, { "@id" : "BBa_B0015/subcomponent_1", "@type" : "sbol:SubComponent", @@ -77,17 +69,25 @@ "displayId" : "location_1", "end" : "162", "start" : "122" + }, { + "@id" : "BBa_B0015_sequence_1", + "@type" : "sbol:Sequence", + "description" : "BBa_B0015 sequence", + "displayId" : "sequence_1", + "elements" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata", + "encoding" : "sbol:iupacNucleicAcid", + "name" : "BBa_B0015" }, { "@id" : "BBa_B0034", "@type" : "sbol:Component", "description" : "RBS based on Elowitz repressilator", "displayId" : "BBa_B0034", - "hasSequence" : "BBa_B0034/sequence_1", + "hasSequence" : "BBa_B0034_sequence_1", "name" : "BBa_B0034", "role" : "SO:0000139", "type" : "SBO:0000251" }, { - "@id" : "BBa_B0034/sequence_1", + "@id" : "BBa_B0034_sequence_1", "@type" : "sbol:Sequence", "description" : "BBa_B0034 sequence", "displayId" : "sequence_1", @@ -99,35 +99,35 @@ "@type" : "sbol:Component", "description" : "luxR repressor/activator, (no LVA?)", "displayId" : "BBa_C0062", - "hasSequence" : "BBa_C0062/sequence_1", + "hasSequence" : "BBa_C0062_sequence_1", "name" : "luxR", "role" : "SO:0000316", "type" : "SBO:0000251" - }, { - "@id" : "BBa_C0062/sequence_1", - "@type" : "sbol:Sequence", - "description" : "luxR sequence", - "displayId" : "sequence_1", - "elements" : "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "luxR" }, { "@id" : "BBa_C0062_protein", "@type" : "sbol:Component", "description" : "LuxR protein", "displayId" : "BBa_C0062_protein", - "hasSequence" : "BBa_C0062_protein/sequence_1", + "hasSequence" : "BBa_C0062_protein_sequence_1", "name" : "LuxR", "role" : "GO:0003700", "type" : "SBO:0000252" }, { - "@id" : "BBa_C0062_protein/sequence_1", + "@id" : "BBa_C0062_protein_sequence_1", "@type" : "sbol:Sequence", "description" : "LuxR sequence", "displayId" : "sequence_1", "elements" : "NNNNNNNNNNN", "encoding" : "sbol:iupacAminoAcid", "name" : "LuxR" + }, { + "@id" : "BBa_C0062_sequence_1", + "@type" : "sbol:Sequence", + "description" : "luxR sequence", + "displayId" : "sequence_1", + "elements" : "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac", + "encoding" : "sbol:iupacNucleicAcid", + "name" : "luxR" }, { "@id" : "BBa_F2620", "@type" : "sbol:Component", @@ -135,7 +135,7 @@ "displayId" : "BBa_F2620", "hasFeature" : [ "BBa_F2620/subcomponent_6", "BBa_F2620/subcomponent_7", "BBa_F2620/BBa_C0062_protein", "BBa_F2620/subcomponent_4", "BBa_F2620/subcomponent_3", "BBa_F2620/subcomponent_5", "BBa_F2620/TetR_protein" ], "hasInteraction" : [ "BBa_F2620/interaction_1", "BBa_F2620/interaction_3", "BBa_F2620/interaction_2" ], - "hasSequence" : "BBa_F2620/sequence_1", + "hasSequence" : "BBa_F2620_sequence_1", "name" : "BBa_F2620", "role" : "SO:0000704", "type" : "SBO:0000251" @@ -203,14 +203,6 @@ "displayId" : "participation_2", "participant" : "BBa_F2620/TetR_protein", "role" : "SBO:0000459" - }, { - "@id" : "BBa_F2620/sequence_1", - "@type" : "sbol:Sequence", - "description" : "BBa_F2620 sequence", - "displayId" : "sequence_1", - "elements" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "BBa_F2620" }, { "@id" : "BBa_F2620/subcomponent_3", "@type" : "sbol:SubComponent", @@ -276,17 +268,25 @@ "displayId" : "location_1", "end" : "1078", "start" : "1024" + }, { + "@id" : "BBa_F2620_sequence_1", + "@type" : "sbol:Sequence", + "description" : "BBa_F2620 sequence", + "displayId" : "sequence_1", + "elements" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa", + "encoding" : "sbol:iupacNucleicAcid", + "name" : "BBa_F2620" }, { "@id" : "BBa_R0040", "@type" : "sbol:Component", "description" : "TetR repressible promoter", "displayId" : "BBa_R0040", - "hasSequence" : "BBa_R0040/sequence_1", + "hasSequence" : "BBa_R0040_sequence_1", "name" : "pTetR", "role" : "SO:0000167", "type" : "SBO:0000251" }, { - "@id" : "BBa_R0040/sequence_1", + "@id" : "BBa_R0040_sequence_1", "@type" : "sbol:Sequence", "description" : "pTetR sequence", "displayId" : "sequence_1", @@ -298,12 +298,12 @@ "@type" : "sbol:Component", "description" : "Promoter (luxR & HSL regulated -- lux pR)", "displayId" : "BBa_R0062", - "hasSequence" : "BBa_R0062/sequence_1", + "hasSequence" : "BBa_R0062_sequence_1", "name" : "lux pR", "role" : "SO:0000167", "type" : "SBO:0000251" }, { - "@id" : "BBa_R0062/sequence_1", + "@id" : "BBa_R0062_sequence_1", "@type" : "sbol:Sequence", "description" : "lux pR sequence", "displayId" : "sequence_1", @@ -315,12 +315,12 @@ "@type" : "sbol:Component", "description" : "TetR protein", "displayId" : "TetR_protein", - "hasSequence" : "TetR_protein/sequence_1", + "hasSequence" : "TetR_protein_sequence_1", "name" : "TetR", "role" : "GO:0003700", "type" : "SBO:0000252" }, { - "@id" : "TetR_protein/sequence_1", + "@id" : "TetR_protein_sequence_1", "@type" : "sbol:Sequence", "description" : "TetR sequence", "displayId" : "sequence_1", @@ -329,22 +329,6 @@ "name" : "TetR" } ], "@context" : { - "name" : { - "@id" : "http://sbols.org/v3#name" - }, - "encoding" : { - "@id" : "http://sbols.org/v3#encoding", - "@type" : "@id" - }, - "elements" : { - "@id" : "http://sbols.org/v3#elements" - }, - "displayId" : { - "@id" : "http://sbols.org/v3#displayId" - }, - "description" : { - "@id" : "http://sbols.org/v3#description" - }, "role" : { "@id" : "http://sbols.org/v3#role", "@type" : "@id" @@ -353,6 +337,9 @@ "@id" : "http://sbols.org/v3#participant", "@type" : "@id" }, + "displayId" : { + "@id" : "http://sbols.org/v3#displayId" + }, "orientation" : { "@id" : "http://sbols.org/v3#orientation", "@type" : "@id" @@ -365,6 +352,19 @@ "@id" : "http://sbols.org/v3#hasLocation", "@type" : "@id" }, + "name" : { + "@id" : "http://sbols.org/v3#name" + }, + "encoding" : { + "@id" : "http://sbols.org/v3#encoding", + "@type" : "@id" + }, + "elements" : { + "@id" : "http://sbols.org/v3#elements" + }, + "description" : { + "@id" : "http://sbols.org/v3#description" + }, "type" : { "@id" : "http://sbols.org/v3#type", "@type" : "@id" diff --git a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.nt b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.nt index e416f72..9003bc2 100644 --- a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.nt +++ b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.nt @@ -1,15 +1,3 @@ - "BBa_B0010" . - . - "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" . - "sequence_1" . - "BBa_B0010 sequence" . - . - "lux pR" . - . - "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" . - "sequence_1" . - "lux pR sequence" . - . . . "participation_2" . @@ -19,29 +7,23 @@ . "subcomponent_7" . . + "BBa_F2620" . + . + "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" . + "sequence_1" . + "BBa_F2620 sequence" . + . . . "LuxR" . - . + . "BBa_C0062_protein" . "LuxR protein" . . - "BBa_B0015" . - . - "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" . - "sequence_1" . - "BBa_B0015 sequence" . - . "55" . "108" . "location_1" . . - "BBa_B0034" . - . - "aaagaggagaaa" . - "sequence_1" . - "BBa_B0034 sequence" . - . "1024" . "1078" . "location_1" . @@ -49,23 +31,17 @@ . . "BBa_B0012" . - . + . "BBa_B0012" . "Double terminator consisting of BBa_B0010 and BBa_B0012" . . . . "pTetR" . - . + . "BBa_R0040" . "TetR repressible promoter" . . - "LuxR" . - . - "NNNNNNNNNNN" . - "sequence_1" . - "LuxR sequence" . - . . . "participation_1" . @@ -80,12 +56,18 @@ . "subcomponent_6" . . - "BBa_B0012" . - . - "tcacactggctcaccttcgggtgggcctttctgcgtttata" . - "sequence_1" . - "BBa_B0012 sequence" . - . + "luxR" . + . + "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" . + "sequence_1" . + "luxR sequence" . + . + "BBa_B0010" . + . + "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" . + "sequence_1" . + "BBa_B0010 sequence" . + . . . . @@ -109,32 +91,32 @@ . "interaction_3" . . - "pTetR" . - . - "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" . - "sequence_1" . - "pTetR sequence" . - . + "BBa_B0034" . + . + "aaagaggagaaa" . + "sequence_1" . + "BBa_B0034 sequence" . + . . . "BBa_B0010" . - . + . "BBa_B0010" . "Transcriptional terminator consisting of a 64 bp stem-loop" . . + "LuxR" . + . + "NNNNNNNNNNN" . + "sequence_1" . + "LuxR sequence" . + . . . "TetR" . - . + . "TetR_protein" . "TetR protein" . . - "TetR" . - . - "NNNNNNNNNNN" . - "sequence_1" . - "TetR sequence" . - . . . "participation_1" . @@ -144,10 +126,16 @@ . "subcomponent_4" . . + "lux pR" . + . + "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" . + "sequence_1" . + "lux pR sequence" . + . . . "BBa_B0015" . - . + . . . "BBa_B0015" . @@ -161,6 +149,12 @@ . "BBa_C0062_protein" . . + "BBa_B0015" . + . + "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" . + "sequence_1" . + "BBa_B0015 sequence" . + . . "BBa_F2620" . . @@ -169,7 +163,7 @@ . . . - . + . . "BBa_F2620" . "PoPS Receiver" . @@ -182,12 +176,6 @@ . "participation_2" . . - "BBa_F2620" . - . - "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" . - "sequence_1" . - "BBa_F2620 sequence" . - . . "TetR_protein" . . @@ -213,6 +201,12 @@ . "interaction_1" . . + "pTetR" . + . + "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" . + "sequence_1" . + "pTetR sequence" . + . . . "participation_1" . @@ -224,27 +218,33 @@ . . "BBa_B0034" . - . + . "BBa_B0034" . "RBS based on Elowitz repressilator" . . . . "lux pR" . - . + . "BBa_R0062" . "Promoter (luxR & HSL regulated -- lux pR)" . . - "luxR" . - . - "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" . - "sequence_1" . - "luxR sequence" . - . + "TetR" . + . + "NNNNNNNNNNN" . + "sequence_1" . + "TetR sequence" . + . . . "luxR" . - . + . "BBa_C0062" . "luxR repressor/activator, (no LVA?)" . . + "BBa_B0012" . + . + "tcacactggctcaccttcgggtgggcctttctgcgtttata" . + "sequence_1" . + "BBa_B0012 sequence" . + . diff --git a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rdf b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rdf index 2375a25..6b98657 100644 --- a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rdf +++ b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rdf @@ -15,7 +15,7 @@ TetR - + TetR_protein TetR protein @@ -25,7 +25,7 @@ LuxR - + BBa_C0062_protein LuxR protein @@ -35,7 +35,7 @@ pTetR - + BBa_R0040 TetR repressible promoter @@ -45,7 +45,7 @@ lux pR - + BBa_R0062 Promoter (luxR &amp; HSL regulated -- lux pR) @@ -163,7 +163,7 @@ - + @@ -213,7 +213,7 @@ BBa_B0010 - + BBa_B0010 Transcriptional terminator consisting of a 64 bp stem-loop @@ -223,7 +223,7 @@ BBa_B0012 - + BBa_B0012 Double terminator consisting of BBa_B0010 and BBa_B0012 @@ -233,7 +233,7 @@ BBa_B0034 - + BBa_B0034 RBS based on Elowitz repressilator @@ -243,7 +243,7 @@ BBa_B0015 - + @@ -281,75 +281,75 @@ luxR - + BBa_C0062 luxR repressor/activator, (no LVA?) - - BBa_B0012 + + BBa_B0034 - tcacactggctcaccttcgggtgggcctttctgcgtttata + aaagaggagaaa sequence_1 - BBa_B0012 sequence + BBa_B0034 sequence - - luxR + + BBa_F2620 - atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac + tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa sequence_1 - luxR sequence + BBa_F2620 sequence - + TetR NNNNNNNNNNN sequence_1 TetR sequence - - BBa_B0034 + + luxR - aaagaggagaaa - sequence_1 - BBa_B0034 sequence - - - LuxR - - NNNNNNNNNNN + atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac sequence_1 - LuxR sequence + luxR sequence - + BBa_B0015 ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata sequence_1 BBa_B0015 sequence - + pTetR tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac sequence_1 pTetR sequence - - BBa_F2620 + + LuxR + + NNNNNNNNNNN + sequence_1 + LuxR sequence + + + BBa_B0012 - tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa + tcacactggctcaccttcgggtgggcctttctgcgtttata sequence_1 - BBa_F2620 sequence + BBa_B0012 sequence - + lux pR acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa sequence_1 lux pR sequence - + BBa_B0010 ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc diff --git a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rj b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rj index a3ff328..dc9c973 100644 --- a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rj +++ b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.rj @@ -17,7 +17,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/TetR_protein/sequence_1" + "value" : "https://synbiohub.org/public/igem/TetR_protein_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -37,39 +37,6 @@ ] } , - "https://synbiohub.org/public/igem/BBa_C0062_protein/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "NNNNNNNNNNN" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "LuxR" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacAminoAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "LuxR sequence" - } - ] - } - , "https://synbiohub.org/public/igem/BBa_F2620" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -88,7 +55,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_F2620/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_F2620_sequence_1" } ] , "http://sbols.org/v3#hasFeature" : [ { @@ -168,7 +135,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_B0010/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_B0010_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -188,6 +155,39 @@ ] } , + "https://synbiohub.org/public/igem/BBa_C0062_protein_sequence_1" : { + "http://sbols.org/v3#displayId" : [ { + "type" : "literal" , + "value" : "sequence_1" + } + ] , + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#Sequence" + } + ] , + "http://sbols.org/v3#elements" : [ { + "type" : "literal" , + "value" : "NNNNNNNNNNN" + } + ] , + "http://sbols.org/v3#name" : [ { + "type" : "literal" , + "value" : "LuxR" + } + ] , + "http://sbols.org/v3#encoding" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#iupacAminoAcid" + } + ] , + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "LuxR sequence" + } + ] + } + , "https://synbiohub.org/public/igem/BBa_B0012" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -206,7 +206,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_B0012/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_B0012_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -267,7 +267,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_B0034/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_B0034_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -328,45 +328,40 @@ ] } , - "https://synbiohub.org/public/igem/BBa_C0062_protein" : { + "https://synbiohub.org/public/igem/BBa_B0034_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "BBa_C0062_protein" - } - ] , - "http://sbols.org/v3#role" : [ { - "type" : "uri" , - "value" : "https://identifiers.org/GO:0003700" + "value" : "sequence_1" } ] , "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#Component" + "value" : "http://sbols.org/v3#Sequence" } ] , - "http://sbols.org/v3#hasSequence" : [ { - "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_C0062_protein/sequence_1" + "http://sbols.org/v3#elements" : [ { + "type" : "literal" , + "value" : "aaagaggagaaa" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "LuxR" + "value" : "BBa_B0034" } ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "LuxR protein" + "http://sbols.org/v3#encoding" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#iupacNucleicAcid" } ] , - "http://sbols.org/v3#type" : [ { - "type" : "uri" , - "value" : "https://identifiers.org/SBO:0000252" + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "BBa_B0034 sequence" } ] } , - "https://synbiohub.org/public/igem/BBa_C0062/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_F2620_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -379,12 +374,12 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" + "value" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "luxR" + "value" : "BBa_F2620" } ] , "http://sbols.org/v3#encoding" : [ { @@ -394,72 +389,77 @@ ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "luxR sequence" + "value" : "BBa_F2620 sequence" } ] } , - "https://synbiohub.org/public/igem/BBa_F2620/interaction_2" : { + "https://synbiohub.org/public/igem/BBa_C0062_protein" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "interaction_2" + "value" : "BBa_C0062_protein" } ] , - "http://sbols.org/v3#hasParticipation" : [ { + "http://sbols.org/v3#role" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_2/participation_1" + "value" : "https://identifiers.org/GO:0003700" } - , { + ] , + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_2/participation_2" + "value" : "http://sbols.org/v3#Component" } ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#Interaction" + "value" : "https://synbiohub.org/public/igem/BBa_C0062_protein_sequence_1" + } + ] , + "http://sbols.org/v3#name" : [ { + "type" : "literal" , + "value" : "LuxR" + } + ] , + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "LuxR protein" } ] , "http://sbols.org/v3#type" : [ { "type" : "uri" , - "value" : "https://identifiers.org/SBO:0000170" + "value" : "https://identifiers.org/SBO:0000252" } ] } , - "https://synbiohub.org/public/igem/BBa_B0015/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_F2620/interaction_2" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "sequence_1" + "value" : "interaction_2" } ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "http://sbols.org/v3#hasParticipation" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" + "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_2/participation_1" } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "BBa_B0015" + , { + "type" : "uri" , + "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_2/participation_2" } ] , - "http://sbols.org/v3#encoding" : [ { + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" + "value" : "http://sbols.org/v3#Interaction" } ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "BBa_B0015 sequence" + "http://sbols.org/v3#type" : [ { + "type" : "uri" , + "value" : "https://identifiers.org/SBO:0000170" } ] } , - "https://synbiohub.org/public/igem/BBa_R0040/sequence_1" : { + "https://synbiohub.org/public/igem/TetR_protein_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -472,22 +472,22 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" + "value" : "NNNNNNNNNNN" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "pTetR" + "value" : "TetR" } ] , "http://sbols.org/v3#encoding" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" + "value" : "http://sbols.org/v3#iupacAminoAcid" } ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "pTetR sequence" + "value" : "TetR sequence" } ] } @@ -515,7 +515,7 @@ ] } , - "https://synbiohub.org/public/igem/BBa_R0062/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_B0012_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -528,12 +528,12 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" + "value" : "tcacactggctcaccttcgggtgggcctttctgcgtttata" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "lux pR" + "value" : "BBa_B0012" } ] , "http://sbols.org/v3#encoding" : [ { @@ -543,7 +543,7 @@ ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "lux pR sequence" + "value" : "BBa_B0012 sequence" } ] } @@ -632,6 +632,39 @@ ] } , + "https://synbiohub.org/public/igem/BBa_B0010_sequence_1" : { + "http://sbols.org/v3#displayId" : [ { + "type" : "literal" , + "value" : "sequence_1" + } + ] , + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#Sequence" + } + ] , + "http://sbols.org/v3#elements" : [ { + "type" : "literal" , + "value" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" + } + ] , + "http://sbols.org/v3#name" : [ { + "type" : "literal" , + "value" : "BBa_B0010" + } + ] , + "http://sbols.org/v3#encoding" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#iupacNucleicAcid" + } + ] , + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "BBa_B0010 sequence" + } + ] + } + , "https://synbiohub.org/public/igem/BBa_F2620/subcomponent_7" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -724,7 +757,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_R0040/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_R0040_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -762,7 +795,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_R0062/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_R0062_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -924,40 +957,34 @@ ] } , - "https://synbiohub.org/public/igem/BBa_B0012/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_F2620/interaction_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "sequence_1" + "value" : "interaction_1" } ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "http://sbols.org/v3#hasParticipation" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "tcacactggctcaccttcgggtgggcctttctgcgtttata" + "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_1/participation_1" } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "BBa_B0012" + , { + "type" : "uri" , + "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_1/participation_2" } ] , - "http://sbols.org/v3#encoding" : [ { + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" + "value" : "http://sbols.org/v3#Interaction" } ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "BBa_B0012 sequence" + "http://sbols.org/v3#type" : [ { + "type" : "uri" , + "value" : "https://identifiers.org/SBO:0000589" } ] } , - "https://synbiohub.org/public/igem/TetR_protein/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_C0062_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -970,54 +997,60 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "NNNNNNNNNNN" + "value" : "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "TetR" + "value" : "luxR" } ] , "http://sbols.org/v3#encoding" : [ { "type" : "uri" , - "value" : "http://sbols.org/v3#iupacAminoAcid" + "value" : "http://sbols.org/v3#iupacNucleicAcid" } ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "TetR sequence" + "value" : "luxR sequence" } ] } , - "https://synbiohub.org/public/igem/BBa_F2620/interaction_1" : { + "https://synbiohub.org/public/igem/BBa_B0015_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "interaction_1" + "value" : "sequence_1" } ] , - "http://sbols.org/v3#hasParticipation" : [ { + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_1/participation_1" + "value" : "http://sbols.org/v3#Sequence" } - , { - "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_F2620/interaction_1/participation_2" + ] , + "http://sbols.org/v3#elements" : [ { + "type" : "literal" , + "value" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" } ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Interaction" + "http://sbols.org/v3#name" : [ { + "type" : "literal" , + "value" : "BBa_B0015" } ] , - "http://sbols.org/v3#type" : [ { + "http://sbols.org/v3#encoding" : [ { "type" : "uri" , - "value" : "https://identifiers.org/SBO:0000589" + "value" : "http://sbols.org/v3#iupacNucleicAcid" + } + ] , + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "BBa_B0015 sequence" } ] } , - "https://synbiohub.org/public/igem/BBa_B0034/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_R0040_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -1030,12 +1063,12 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "aaagaggagaaa" + "value" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "BBa_B0034" + "value" : "pTetR" } ] , "http://sbols.org/v3#encoding" : [ { @@ -1045,7 +1078,7 @@ ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "BBa_B0034 sequence" + "value" : "pTetR sequence" } ] } @@ -1073,7 +1106,7 @@ ] } , - "https://synbiohub.org/public/igem/BBa_F2620/sequence_1" : { + "https://synbiohub.org/public/igem/BBa_R0062_sequence_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "sequence_1" @@ -1086,12 +1119,12 @@ ] , "http://sbols.org/v3#elements" : [ { "type" : "literal" , - "value" : "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" + "value" : "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" } ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , - "value" : "BBa_F2620" + "value" : "lux pR" } ] , "http://sbols.org/v3#encoding" : [ { @@ -1101,7 +1134,7 @@ ] , "http://sbols.org/v3#description" : [ { "type" : "literal" , - "value" : "BBa_F2620 sequence" + "value" : "lux pR sequence" } ] } @@ -1147,7 +1180,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_B0015/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_B0015_sequence_1" } ] , "http://sbols.org/v3#name" : [ { @@ -1255,39 +1288,6 @@ ] } , - "https://synbiohub.org/public/igem/BBa_B0010/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "BBa_B0010" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "BBa_B0010 sequence" - } - ] - } - , "https://synbiohub.org/public/igem/BBa_F2620/subcomponent_6" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -1334,7 +1334,7 @@ ] , "http://sbols.org/v3#hasSequence" : [ { "type" : "uri" , - "value" : "https://synbiohub.org/public/igem/BBa_C0062/sequence_1" + "value" : "https://synbiohub.org/public/igem/BBa_C0062_sequence_1" } ] , "http://sbols.org/v3#name" : [ { diff --git a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.ttl b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.ttl index d2ba66c..0bb5e7b 100644 --- a/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.ttl +++ b/libSBOLj3/output/BBa_F2620_PoPSReceiver/BBa_F2620_PoPSReceiver.ttl @@ -9,22 +9,6 @@ @prefix prov: . @prefix om: . - - a sbol:Sequence ; - sbol:description "BBa_B0010 sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "BBa_B0010" . - - - a sbol:Sequence ; - sbol:description "lux pR sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "lux pR" . - a sbol:Participation ; sbol:displayId "participation_2" ; @@ -38,36 +22,28 @@ sbol:instanceOf :BBa_R0062 ; sbol:orientation sbol:inline . +:BBa_F2620_sequence_1 + a sbol:Sequence ; + sbol:description "BBa_F2620 sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "BBa_F2620" . + :BBa_C0062_protein a sbol:Component ; sbol:description "LuxR protein" ; sbol:displayId "BBa_C0062_protein" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_C0062_protein_sequence_1 ; sbol:name "LuxR" ; sbol:role GO:0003700 ; sbol:type SBO:0000252 . - - a sbol:Sequence ; - sbol:description "BBa_B0015 sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "BBa_B0015" . - a sbol:Range ; sbol:displayId "location_1" ; sbol:end "108" ; sbol:start "55" . - - a sbol:Sequence ; - sbol:description "BBa_B0034 sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "aaagaggagaaa" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "BBa_B0034" . - a sbol:Range ; sbol:displayId "location_1" ; @@ -77,7 +53,7 @@ :BBa_B0012 a sbol:Component ; sbol:description "Double terminator consisting of BBa_B0010 and BBa_B0012" ; sbol:displayId "BBa_B0012" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_B0012_sequence_1 ; sbol:name "BBa_B0012" ; sbol:role SO:0000141 ; sbol:type SBO:0000251 . @@ -85,19 +61,11 @@ :BBa_R0040 a sbol:Component ; sbol:description "TetR repressible promoter" ; sbol:displayId "BBa_R0040" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_R0040_sequence_1 ; sbol:name "pTetR" ; sbol:role SO:0000167 ; sbol:type SBO:0000251 . - - a sbol:Sequence ; - sbol:description "LuxR sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "NNNNNNNNNNN" ; - sbol:encoding sbol:iupacAminoAcid ; - sbol:name "LuxR" . - a sbol:Participation ; sbol:displayId "participation_1" ; @@ -118,13 +86,21 @@ sbol:instanceOf :BBa_B0015 ; sbol:orientation sbol:inline . - +:BBa_C0062_sequence_1 a sbol:Sequence ; - sbol:description "BBa_B0012 sequence" ; + sbol:description "luxR sequence" ; sbol:displayId "sequence_1" ; - sbol:elements "tcacactggctcaccttcgggtgggcctttctgcgtttata" ; + sbol:elements "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" ; sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "BBa_B0012" . + sbol:name "luxR" . + +:BBa_B0010_sequence_1 + a sbol:Sequence ; + sbol:description "BBa_B0010 sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctc" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "BBa_B0010" . a sbol:SubComponent ; @@ -158,38 +134,38 @@ sbol:hasParticipation , ; sbol:type SBO:0000170 . - +:BBa_B0034_sequence_1 a sbol:Sequence ; - sbol:description "pTetR sequence" ; + sbol:description "BBa_B0034 sequence" ; sbol:displayId "sequence_1" ; - sbol:elements "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" ; + sbol:elements "aaagaggagaaa" ; sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "pTetR" . + sbol:name "BBa_B0034" . :BBa_B0010 a sbol:Component ; sbol:description "Transcriptional terminator consisting of a 64 bp stem-loop" ; sbol:displayId "BBa_B0010" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_B0010_sequence_1 ; sbol:name "BBa_B0010" ; sbol:role SO:0000141 ; sbol:type SBO:0000251 . +:BBa_C0062_protein_sequence_1 + a sbol:Sequence ; + sbol:description "LuxR sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "NNNNNNNNNNN" ; + sbol:encoding sbol:iupacAminoAcid ; + sbol:name "LuxR" . + :TetR_protein a sbol:Component ; sbol:description "TetR protein" ; sbol:displayId "TetR_protein" ; - sbol:hasSequence ; + sbol:hasSequence :TetR_protein_sequence_1 ; sbol:name "TetR" ; sbol:role GO:0003700 ; sbol:type SBO:0000252 . - - a sbol:Sequence ; - sbol:description "TetR sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "NNNNNNNNNNN" ; - sbol:encoding sbol:iupacAminoAcid ; - sbol:name "TetR" . - a sbol:Participation ; sbol:displayId "participation_1" ; @@ -203,11 +179,19 @@ sbol:instanceOf :BBa_B0034 ; sbol:orientation sbol:inline . +:BBa_R0062_sequence_1 + a sbol:Sequence ; + sbol:description "lux pR sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "acctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "lux pR" . + :BBa_B0015 a sbol:Component ; sbol:description "Double terminator consisting of BBa_B0010 and BBa_B0012" ; sbol:displayId "BBa_B0015" ; sbol:hasFeature , ; - sbol:hasSequence ; + sbol:hasSequence :BBa_B0015_sequence_1 ; sbol:name "BBa_B0015" ; sbol:role SO:0000141 ; sbol:type SBO:0000251 . @@ -223,12 +207,20 @@ sbol:displayId "BBa_C0062_protein" ; sbol:instanceOf :BBa_C0062_protein . +:BBa_B0015_sequence_1 + a sbol:Sequence ; + sbol:description "BBa_B0015 sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttata" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "BBa_B0015" . + :BBa_F2620 a sbol:Component ; sbol:description "PoPS Receiver" ; sbol:displayId "BBa_F2620" ; sbol:hasFeature , , , , , , ; sbol:hasInteraction , , ; - sbol:hasSequence ; + sbol:hasSequence :BBa_F2620_sequence_1 ; sbol:name "BBa_F2620" ; sbol:role SO:0000704 ; sbol:type SBO:0000251 . @@ -239,14 +231,6 @@ sbol:participant ; sbol:role SBO:0000011 . - - a sbol:Sequence ; - sbol:description "BBa_F2620 sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcacaaagaggagaaaatgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcacccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctcacactggctcaccttcgggtgggcctttctgcgtttataacctgtaggatcgtacaggtttacgcaagaaaatggtttgttatagtcgaataaa" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "BBa_F2620" . - a sbol:SubComponent ; sbol:displayId "TetR_protein" ; @@ -283,6 +267,14 @@ sbol:hasParticipation , ; sbol:type SBO:0000589 . +:BBa_R0040_sequence_1 + a sbol:Sequence ; + sbol:description "pTetR sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "pTetR" . + a sbol:Participation ; sbol:displayId "participation_1" ; @@ -298,7 +290,7 @@ :BBa_B0034 a sbol:Component ; sbol:description "RBS based on Elowitz repressilator" ; sbol:displayId "BBa_B0034" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_B0034_sequence_1 ; sbol:name "BBa_B0034" ; sbol:role SO:0000139 ; sbol:type SBO:0000251 . @@ -306,23 +298,31 @@ :BBa_R0062 a sbol:Component ; sbol:description "Promoter (luxR & HSL regulated -- lux pR)" ; sbol:displayId "BBa_R0062" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_R0062_sequence_1 ; sbol:name "lux pR" ; sbol:role SO:0000167 ; sbol:type SBO:0000251 . - +:TetR_protein_sequence_1 a sbol:Sequence ; - sbol:description "luxR sequence" ; + sbol:description "TetR sequence" ; sbol:displayId "sequence_1" ; - sbol:elements "atgaaaaacataaatgccgacgacacatacagaataattaataaaattaaagcttgtagaagcaataatgatattaatcaatgcttatctgatatgactaaaatggtacattgtgaatattatttactcgcgatcatttatcctcattctatggttaaatctgatatttcaatcctagataattaccctaaaaaatggaggcaatattatgatgacgctaatttaataaaatatgatcctatagtagattattctaactccaatcattcaccaattaattggaatatatttgaaaacaatgctgtaaataaaaaatctccaaatgtaattaaagaagcgaaaacatcaggtcttatcactgggtttagtttccctattcatacggctaacaatggcttcggaatgcttagttttgcacattcagaaaaagacaactatatagatagtttatttttacatgcgtgtatgaacataccattaattgttccttctctagttgataattatcgaaaaataaatatagcaaataataaatcaaacaacgatttaaccaaaagagaaaaagaatgtttagcgtgggcatgcgaaggaaaaagctcttgggatatttcaaaaatattaggttgcagtgagcgtactgtcactttccatttaaccaatgcgcaaatgaaactcaatacaacaaaccgctgccaaagtatttctaaagcaattttaacaggagcaattgattgcccatactttaaaaattaataacactgatagtgctagtgtagatcac" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "luxR" . + sbol:elements "NNNNNNNNNNN" ; + sbol:encoding sbol:iupacAminoAcid ; + sbol:name "TetR" . :BBa_C0062 a sbol:Component ; sbol:description "luxR repressor/activator, (no LVA?)" ; sbol:displayId "BBa_C0062" ; - sbol:hasSequence ; + sbol:hasSequence :BBa_C0062_sequence_1 ; sbol:name "luxR" ; sbol:role SO:0000316 ; sbol:type SBO:0000251 . + +:BBa_B0012_sequence_1 + a sbol:Sequence ; + sbol:description "BBa_B0012 sequence" ; + sbol:displayId "sequence_1" ; + sbol:elements "tcacactggctcaccttcgggtgggcctttctgcgtttata" ; + sbol:encoding sbol:iupacNucleicAcid ; + sbol:name "BBa_B0012" . diff --git a/libSBOLj3/output/entity/attachment/attachment.jsonld b/libSBOLj3/output/entity/attachment/attachment.jsonld index 310137e..f87c728 100644 --- a/libSBOLj3/output/entity/attachment/attachment.jsonld +++ b/libSBOLj3/output/entity/attachment/attachment.jsonld @@ -15,7 +15,7 @@ "hash" : "aaa", "hashAlgorithm" : "Alg1", "size" : "1000", - "source" : "https://sbolstandard.org/attachment1" + "source" : "../../attachment1" }, { "@id" : "impl1", "@type" : "sbol:Implementation", @@ -24,22 +24,25 @@ "hasAttachment" : "attachment1" } ], "@context" : { - "role" : { - "@id" : "http://sbols.org/v3#role", - "@type" : "@id" + "hashAlgorithm" : { + "@id" : "http://sbols.org/v3#hashAlgorithm" }, - "description" : { - "@id" : "http://sbols.org/v3#description" + "hash" : { + "@id" : "http://sbols.org/v3#hash" }, - "displayId" : { - "@id" : "http://sbols.org/v3#displayId" + "size" : { + "@id" : "http://sbols.org/v3#size" }, - "type" : { - "@id" : "http://sbols.org/v3#type", + "format" : { + "@id" : "http://sbols.org/v3#format", "@type" : "@id" }, - "name" : { - "@id" : "http://sbols.org/v3#name" + "source" : { + "@id" : "http://sbols.org/v3#source", + "@type" : "@id" + }, + "displayId" : { + "@id" : "http://sbols.org/v3#displayId" }, "hasAttachment" : { "@id" : "http://sbols.org/v3#hasAttachment", @@ -49,24 +52,21 @@ "@id" : "http://sbols.org/v3#built", "@type" : "@id" }, - "hashAlgorithm" : { - "@id" : "http://sbols.org/v3#hashAlgorithm" - }, - "hash" : { - "@id" : "http://sbols.org/v3#hash" + "role" : { + "@id" : "http://sbols.org/v3#role", + "@type" : "@id" }, - "size" : { - "@id" : "http://sbols.org/v3#size" + "description" : { + "@id" : "http://sbols.org/v3#description" }, - "format" : { - "@id" : "http://sbols.org/v3#format", + "type" : { + "@id" : "http://sbols.org/v3#type", "@type" : "@id" }, - "source" : { - "@id" : "http://sbols.org/v3#source", - "@type" : "@id" + "name" : { + "@id" : "http://sbols.org/v3#name" }, - "@vocab" : "http://parts.igem.org/Part:", + "@vocab" : "https://sbolstandard.org/examples/", "SBO" : "https://identifiers.org/SBO:", "CHEBI" : "https://identifiers.org/CHEBI:", "GO" : "https://identifiers.org/GO:", diff --git a/libSBOLj3/output/entity/attachment/attachment.nt b/libSBOLj3/output/entity/attachment/attachment.nt index 7a5c91c..64ad0a6 100644 --- a/libSBOLj3/output/entity/attachment/attachment.nt +++ b/libSBOLj3/output/entity/attachment/attachment.nt @@ -1,17 +1,17 @@ - . - "TetR protein" . - "TetR_protein" . - . - "TetR" . - . - . - . - "impl1" . - . - "Alg1" . - "aaa" . - "1000" . - . - . - "attachment1" . - . + "Alg1" . + "aaa" . + "1000" . + . + . + "attachment1" . + . + . + . + "impl1" . + . + . + "TetR protein" . + "TetR_protein" . + . + "TetR" . + . diff --git a/libSBOLj3/output/entity/attachment/attachment.rdf b/libSBOLj3/output/entity/attachment/attachment.rdf index 76508b8..f3cf7b6 100644 --- a/libSBOLj3/output/entity/attachment/attachment.rdf +++ b/libSBOLj3/output/entity/attachment/attachment.rdf @@ -5,33 +5,33 @@ xmlns:sbol="http://sbols.org/v3#" xmlns:CHEBI="https://identifiers.org/CHEBI:" xmlns:prov="http://www.w3.org/ns/prov#" - xmlns="http://parts.igem.org/Part:" xmlns:SBO="https://identifiers.org/SBO:" xmlns:GO="https://identifiers.org/GO:" + xmlns="https://sbolstandard.org/examples/" xmlns:om="http://www.ontology-of-units-of-measure.org/resource/om-2/" - xml:base="http://parts.igem.org/Part:"> - + xml:base="https://sbolstandard.org/examples/"> + - + - + impl1 - + TetR protein TetR_protein TetR - + Alg1 aaa 1000 - + attachment1 diff --git a/libSBOLj3/output/entity/attachment/attachment.rj b/libSBOLj3/output/entity/attachment/attachment.rj index 30317e1..696a462 100644 --- a/libSBOLj3/output/entity/attachment/attachment.rj +++ b/libSBOLj3/output/entity/attachment/attachment.rj @@ -1,38 +1,5 @@ { - "http://parts.igem.org/Part:/TetR_protein" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "TetR_protein" - } - ] , - "http://sbols.org/v3#role" : [ { - "type" : "uri" , - "value" : "https://identifiers.org/GO:0003700" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Component" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "TetR" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "TetR protein" - } - ] , - "http://sbols.org/v3#type" : [ { - "type" : "uri" , - "value" : "https://identifiers.org/SBO:0000252" - } - ] - } - , - "http://parts.igem.org/Part:/impl1" : { + "https://sbolstandard.org/examples/impl1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "impl1" @@ -45,17 +12,17 @@ ] , "http://sbols.org/v3#built" : [ { "type" : "uri" , - "value" : "http://parts.igem.org/Part:/TetR_protein" + "value" : "https://sbolstandard.org/examples/TetR_protein" } ] , "http://sbols.org/v3#hasAttachment" : [ { "type" : "uri" , - "value" : "http://parts.igem.org/Part:/attachment1" + "value" : "https://sbolstandard.org/examples/attachment1" } ] } , - "http://parts.igem.org/Part:/attachment1" : { + "https://sbolstandard.org/examples/attachment1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , "value" : "attachment1" @@ -92,4 +59,37 @@ } ] } + , + "https://sbolstandard.org/examples/TetR_protein" : { + "http://sbols.org/v3#displayId" : [ { + "type" : "literal" , + "value" : "TetR_protein" + } + ] , + "http://sbols.org/v3#role" : [ { + "type" : "uri" , + "value" : "https://identifiers.org/GO:0003700" + } + ] , + "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { + "type" : "uri" , + "value" : "http://sbols.org/v3#Component" + } + ] , + "http://sbols.org/v3#name" : [ { + "type" : "literal" , + "value" : "TetR" + } + ] , + "http://sbols.org/v3#description" : [ { + "type" : "literal" , + "value" : "TetR protein" + } + ] , + "http://sbols.org/v3#type" : [ { + "type" : "uri" , + "value" : "https://identifiers.org/SBO:0000252" + } + ] + } } diff --git a/libSBOLj3/output/entity/attachment/attachment.ttl b/libSBOLj3/output/entity/attachment/attachment.ttl index b9872d0..7c8bbad 100644 --- a/libSBOLj3/output/entity/attachment/attachment.ttl +++ b/libSBOLj3/output/entity/attachment/attachment.ttl @@ -1,5 +1,5 @@ -@base . -@prefix : . +@base . +@prefix : . @prefix SBO: . @prefix CHEBI: . @prefix GO: . @@ -9,24 +9,22 @@ @prefix prov: . @prefix om: . -<./Part:/TetR_protein> - a sbol:Component ; - sbol:description "TetR protein" ; - sbol:displayId "TetR_protein" ; - sbol:name "TetR" ; - sbol:role GO:0003700 ; - sbol:type SBO:0000252 . - -<./Part:/impl1> a sbol:Implementation ; - sbol:built <./Part:/TetR_protein> ; - sbol:displayId "impl1" ; - sbol:hasAttachment <./Part:/attachment1> . - -<./Part:/attachment1> - a sbol:Attachment ; +:attachment1 a sbol:Attachment ; sbol:displayId "attachment1" ; sbol:format EDAM:format_2585 ; sbol:hash "aaa" ; sbol:hashAlgorithm "Alg1" ; sbol:size "1000" ; sbol:source . + +:impl1 a sbol:Implementation ; + sbol:built :TetR_protein ; + sbol:displayId "impl1" ; + sbol:hasAttachment :attachment1 . + +:TetR_protein a sbol:Component ; + sbol:description "TetR protein" ; + sbol:displayId "TetR_protein" ; + sbol:name "TetR" ; + sbol:role GO:0003700 ; + sbol:type SBO:0000252 . diff --git a/libSBOLj3/output/measurement_entity/measurement/catalog-v001.xml b/libSBOLj3/output/measurement_entity/measurement/catalog-v001.xml new file mode 100644 index 0000000..3d11afb --- /dev/null +++ b/libSBOLj3/output/measurement_entity/measurement/catalog-v001.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/libSBOLj3/output/measurement_entity/measurement/measurement.jsonld b/libSBOLj3/output/measurement_entity/measurement/measurement.jsonld index b8a92b1..a14f196 100644 --- a/libSBOLj3/output/measurement_entity/measurement/measurement.jsonld +++ b/libSBOLj3/output/measurement_entity/measurement/measurement.jsonld @@ -70,7 +70,7 @@ "alternativeLabel" : [ "milli1", "milli2" ], "alternativeSymbol" : [ "m1", "m2" ], "comment" : "Comment for the milli prefix.", - "om:hasFactor" : "0.001", + "hasFactor" : "0.001", "label" : "milli", "longcomment" : "This is an example long comment for the milli prefix." }, { @@ -106,10 +106,6 @@ "alternativeLabel" : { "@id" : "http://www.ontology-of-units-of-measure.org/resource/om-2/alternativeLabel" }, - "hasFactor" : { - "@id" : "http://www.ontology-of-units-of-measure.org/resource/om-2/hasFactor", - "@type" : "http://www.w3.org/2001/XMLSchema#float" - }, "displayId" : { "@id" : "http://sbols.org/v3#displayId" }, @@ -119,6 +115,9 @@ "label" : { "@id" : "http://www.ontology-of-units-of-measure.org/resource/om-2/label" }, + "hasFactor" : { + "@id" : "http://www.ontology-of-units-of-measure.org/resource/om-2/hasFactor" + }, "longcomment" : { "@id" : "http://www.ontology-of-units-of-measure.org/resource/om-2/longcomment" }, diff --git a/libSBOLj3/output/measurement_entity/measurement/measurement.nt b/libSBOLj3/output/measurement_entity/measurement/measurement.nt index c6e4386..e8a9191 100644 --- a/libSBOLj3/output/measurement_entity/measurement/measurement.nt +++ b/libSBOLj3/output/measurement_entity/measurement/measurement.nt @@ -1,11 +1,11 @@ "The litre is a unit of volume defined as 1.0e-3 cubic metre." . "liter" . "litre2" . - "0.001"^^ . "litre" . "liter" . "The litre is a unit of volume defined as 1.0e-3 cubic metre." . "liter" . + "0.001" . . "This is an example long comment." . "L2" . diff --git a/libSBOLj3/output/measurement_entity/measurement/measurement.rdf b/libSBOLj3/output/measurement_entity/measurement/measurement.rdf index f2bd312..1942a71 100644 --- a/libSBOLj3/output/measurement_entity/measurement/measurement.rdf +++ b/libSBOLj3/output/measurement_entity/measurement/measurement.rdf @@ -32,12 +32,11 @@ The litre is a unit of volume defined as 1.0e-3 cubic metre. liter litre2 - 0.001 litre liter The litre is a unit of volume defined as 1.0e-3 cubic metre. liter + 0.001 This is an example long comment. L2 L diff --git a/libSBOLj3/output/measurement_entity/measurement/measurement.rj b/libSBOLj3/output/measurement_entity/measurement/measurement.rj index 0a86c28..44a6053 100644 --- a/libSBOLj3/output/measurement_entity/measurement/measurement.rj +++ b/libSBOLj3/output/measurement_entity/measurement/measurement.rj @@ -83,15 +83,14 @@ } , "https://sbolstandard.org/examples/litre" : { - "http://www.ontology-of-units-of-measure.org/resource/om-2/hasFactor" : [ { + "http://sbols.org/v3#displayId" : [ { "type" : "literal" , - "value" : "0.001" , - "datatype" : "http://www.w3.org/2001/XMLSchema#float" + "value" : "litre" } ] , - "http://sbols.org/v3#displayId" : [ { + "http://www.ontology-of-units-of-measure.org/resource/om-2/hasFactor" : [ { "type" : "literal" , - "value" : "litre" + "value" : "0.001" } ] , "http://www.ontology-of-units-of-measure.org/resource/om-2/label" : [ { diff --git a/libSBOLj3/output/measurement_entity/measurement/measurement.ttl b/libSBOLj3/output/measurement_entity/measurement/measurement.ttl index 0ffaa54..879e747 100644 --- a/libSBOLj3/output/measurement_entity/measurement/measurement.ttl +++ b/libSBOLj3/output/measurement_entity/measurement/measurement.ttl @@ -16,7 +16,7 @@ om:alternativeLabel "litre2" , "liter" ; om:alternativeSymbol "L2" , "L" ; om:comment "The litre is a unit of volume defined as 1.0e-3 cubic metre." ; - om:hasFactor "0.001"^^ ; + om:hasFactor "0.001" ; om:label "liter" ; om:longcomment "This is an example long comment." . diff --git a/libSBOLj3/output/multicellular/multicellular.jsonld b/libSBOLj3/output/multicellular/multicellular.jsonld index ed4ab04..073ddbf 100644 --- a/libSBOLj3/output/multicellular/multicellular.jsonld +++ b/libSBOLj3/output/multicellular/multicellular.jsonld @@ -14,7 +14,6 @@ "displayId" : "AHL_producer", "hasFeature" : [ "AHL_producer/subcomponent_3", "AHL_producer/subcomponent_2", "AHL_producer/subcomponent_1", "AHL_producer/AHL", "AHL_producer/subcomponent_4" ], "hasInteraction" : "AHL_producer/interaction_1", - "hasSequence" : "AHL_producer/sequence_1", "name" : "AHL_producer", "role" : "SO:0000704", "type" : "SBO:0000251" @@ -41,14 +40,6 @@ "displayId" : "participation_2", "participant" : "AHL_producer/AHL", "role" : "SBO:0000011" - }, { - "@id" : "AHL_producer/sequence_1", - "@type" : "sbol:Sequence", - "description" : "AHL_producer sequence", - "displayId" : "sequence_1", - "elements" : "", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "AHL_producer" }, { "@id" : "AHL_producer/subcomponent_1", "@type" : "sbol:SubComponent", @@ -80,7 +71,6 @@ "displayId" : "AHL_receiver", "hasFeature" : [ "AHL_receiver/subcomponent_5", "AHL_receiver/subcomponent_7", "AHL_receiver/LuxR_protein", "AHL_receiver/subcomponent_8", "AHL_receiver/LuxR_AHL", "AHL_receiver/AHL", "AHL_receiver/GFP", "AHL_receiver/subcomponent_2", "AHL_receiver/subcomponent_1", "AHL_receiver/subcomponent_3", "AHL_receiver/subcomponent_4", "AHL_receiver/subcomponent_6" ], "hasInteraction" : [ "AHL_receiver/interaction_2", "AHL_receiver/interaction_3", "AHL_receiver/interaction_4", "AHL_receiver/interaction_1" ], - "hasSequence" : "AHL_receiver/sequence_1", "name" : "AHL_receiver", "role" : "SO:0000704", "type" : "SBO:0000251" @@ -182,14 +172,6 @@ "displayId" : "participation_3", "participant" : "AHL_receiver/LuxR_AHL", "role" : "SBO:0000011" - }, { - "@id" : "AHL_receiver/sequence_1", - "@type" : "sbol:Sequence", - "description" : "AHL_receiver sequence", - "displayId" : "sequence_1", - "elements" : "", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "AHL_receiver" }, { "@id" : "AHL_receiver/subcomponent_1", "@type" : "sbol:SubComponent", @@ -559,10 +541,6 @@ "@id" : "http://sbols.org/v3#hasInteraction", "@type" : "@id" }, - "hasSequence" : { - "@id" : "http://sbols.org/v3#hasSequence", - "@type" : "@id" - }, "subject" : { "@id" : "http://sbols.org/v3#subject", "@type" : "@id" @@ -583,13 +561,6 @@ "@id" : "http://sbols.org/v3#hasParticipation", "@type" : "@id" }, - "encoding" : { - "@id" : "http://sbols.org/v3#encoding", - "@type" : "@id" - }, - "elements" : { - "@id" : "http://sbols.org/v3#elements" - }, "@vocab" : "https://sbolstandard.org/examples/", "SBO" : "https://identifiers.org/SBO:", "CHEBI" : "https://identifiers.org/CHEBI:", diff --git a/libSBOLj3/output/multicellular/multicellular.nt b/libSBOLj3/output/multicellular/multicellular.nt index e072049..8ef72db 100644 --- a/libSBOLj3/output/multicellular/multicellular.nt +++ b/libSBOLj3/output/multicellular/multicellular.nt @@ -72,7 +72,6 @@ . . . - . . . . @@ -266,12 +265,6 @@ "pLuxR" . "LuxR inducible promoter" . . - "AHL_receiver" . - . - "" . - "sequence_1" . - "AHL_receiver sequence" . - . . . "participation_2" . @@ -325,7 +318,6 @@ . . . - . . . . @@ -369,12 +361,6 @@ "ter_luxI" . "Terminator" . . - "AHL_producer" . - . - "" . - "sequence_1" . - "AHL_producer sequence" . - . . "subcomponent_1" . . diff --git a/libSBOLj3/output/multicellular/multicellular.rdf b/libSBOLj3/output/multicellular/multicellular.rdf index 372b280..a1298d2 100644 --- a/libSBOLj3/output/multicellular/multicellular.rdf +++ b/libSBOLj3/output/multicellular/multicellular.rdf @@ -171,9 +171,6 @@ - - - @@ -445,9 +442,6 @@ subcomponent_4 - - - @@ -557,18 +551,4 @@ gfp gfp coding sequence - - AHL_producer - - - sequence_1 - AHL_producer sequence - - - AHL_receiver - - - sequence_1 - AHL_receiver sequence - diff --git a/libSBOLj3/output/multicellular/multicellular.rj b/libSBOLj3/output/multicellular/multicellular.rj index 324959c..d6ee3cb 100644 --- a/libSBOLj3/output/multicellular/multicellular.rj +++ b/libSBOLj3/output/multicellular/multicellular.rj @@ -123,72 +123,6 @@ ] } , - "https://sbolstandard.org/examples/AHL_producer/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "AHL_producer" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "AHL_producer sequence" - } - ] - } - , - "https://sbolstandard.org/examples/AHL_receiver/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "AHL_receiver" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "AHL_receiver sequence" - } - ] - } - , "https://sbolstandard.org/examples/ReceiverSystem/componentreference_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -343,11 +277,6 @@ "value" : "http://sbols.org/v3#Component" } ] , - "http://sbols.org/v3#hasSequence" : [ { - "type" : "uri" , - "value" : "https://sbolstandard.org/examples/AHL_producer/sequence_1" - } - ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , "value" : "AHL_producer" @@ -1985,11 +1914,6 @@ "value" : "http://sbols.org/v3#Component" } ] , - "http://sbols.org/v3#hasSequence" : [ { - "type" : "uri" , - "value" : "https://sbolstandard.org/examples/AHL_receiver/sequence_1" - } - ] , "http://sbols.org/v3#hasFeature" : [ { "type" : "uri" , "value" : "https://sbolstandard.org/examples/AHL_receiver/LuxR_protein" diff --git a/libSBOLj3/output/multicellular/multicellular.ttl b/libSBOLj3/output/multicellular/multicellular.ttl index d0f01e5..1ddc564 100644 --- a/libSBOLj3/output/multicellular/multicellular.ttl +++ b/libSBOLj3/output/multicellular/multicellular.ttl @@ -89,7 +89,6 @@ sbol:displayId "AHL_receiver" ; sbol:hasFeature , , , , , , , , , , , ; sbol:hasInteraction , , , ; - sbol:hasSequence ; sbol:name "AHL_receiver" ; sbol:role SO:0000704 ; sbol:type SBO:0000251 . @@ -324,14 +323,6 @@ sbol:role SO:0000167 ; sbol:type SBO:0000251 . - - a sbol:Sequence ; - sbol:description "AHL_receiver sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "AHL_receiver" . - a sbol:Participation ; sbol:displayId "participation_2" ; @@ -396,7 +387,6 @@ sbol:displayId "AHL_producer" ; sbol:hasFeature , , , , ; sbol:hasInteraction ; - sbol:hasSequence ; sbol:name "AHL_producer" ; sbol:role SO:0000704 ; sbol:type SBO:0000251 . @@ -458,14 +448,6 @@ sbol:role SO:0000141 ; sbol:type SBO:0000251 . - - a sbol:Sequence ; - sbol:description "AHL_producer sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "AHL_producer" . - a sbol:SubComponent ; sbol:displayId "subcomponent_1" ; diff --git a/libSBOLj3/output/provenance_entity/activity/activity.jsonld b/libSBOLj3/output/provenance_entity/activity/activity.jsonld index 7271543..44ca6ef 100644 --- a/libSBOLj3/output/provenance_entity/activity/activity.jsonld +++ b/libSBOLj3/output/provenance_entity/activity/activity.jsonld @@ -26,10 +26,10 @@ "displayId" : "codon_optimization_activity", "name" : "Codon optimization activity", "type" : "sbol:design", - "endedAtTime" : "2020-08-30T22:25:17.44Z", + "endedAtTime" : "2020-08-30T16:37:18.635Z", "qualifiedAssociation" : "codon_optimization_activity/association", "qualifiedUsage" : [ "codon_optimization_activity/optimised_usage", "codon_optimization_activity/source_usage" ], - "startedAtTime" : "2019-07-29T22:25:17.44Z" + "startedAtTime" : "2019-07-29T16:37:18.635Z" }, { "@id" : "codon_optimization_activity/association", "@type" : "prov:Association", diff --git a/libSBOLj3/output/provenance_entity/activity/activity.nt b/libSBOLj3/output/provenance_entity/activity/activity.nt index 2155418..3f2fbe4 100644 --- a/libSBOLj3/output/provenance_entity/activity/activity.nt +++ b/libSBOLj3/output/provenance_entity/activity/activity.nt @@ -41,9 +41,9 @@ . . "Codon optimization activity" . - "2019-07-29T22:25:17.44Z" . "An activity that is used to optimise codons" . - "2020-08-30T22:25:17.44Z" . . "codon_optimization_activity" . + "2019-07-29T16:37:18.635Z" . + "2020-08-30T16:37:18.635Z" . . diff --git a/libSBOLj3/output/provenance_entity/activity/activity.rdf b/libSBOLj3/output/provenance_entity/activity/activity.rdf index 96952b3..67cd83e 100644 --- a/libSBOLj3/output/provenance_entity/activity/activity.rdf +++ b/libSBOLj3/output/provenance_entity/activity/activity.rdf @@ -63,10 +63,10 @@ Codon optimization activity - 2019-07-29T22:25:17.44Z An activity that is used to optimise codons - 2020-08-30T22:25:17.44Z codon_optimization_activity + 2019-07-29T16:37:18.635Z + 2020-08-30T16:37:18.635Z diff --git a/libSBOLj3/output/provenance_entity/activity/activity.rj b/libSBOLj3/output/provenance_entity/activity/activity.rj index 5c6b63b..f2c5df8 100644 --- a/libSBOLj3/output/provenance_entity/activity/activity.rj +++ b/libSBOLj3/output/provenance_entity/activity/activity.rj @@ -165,12 +165,7 @@ ] , "http://www.w3.org/ns/prov#endedAtTime" : [ { "type" : "literal" , - "value" : "2020-08-30T22:25:17.44Z" - } - ] , - "http://www.w3.org/ns/prov#startedAtTime" : [ { - "type" : "literal" , - "value" : "2019-07-29T22:25:17.44Z" + "value" : "2020-08-30T16:37:18.635Z" } ] , "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { @@ -178,6 +173,11 @@ "value" : "http://www.w3.org/ns/prov#Activity" } ] , + "http://www.w3.org/ns/prov#startedAtTime" : [ { + "type" : "literal" , + "value" : "2019-07-29T16:37:18.635Z" + } + ] , "http://sbols.org/v3#name" : [ { "type" : "literal" , "value" : "Codon optimization activity" diff --git a/libSBOLj3/output/provenance_entity/activity/activity.ttl b/libSBOLj3/output/provenance_entity/activity/activity.ttl index b6e1dcc..e1b740f 100644 --- a/libSBOLj3/output/provenance_entity/activity/activity.ttl +++ b/libSBOLj3/output/provenance_entity/activity/activity.ttl @@ -69,7 +69,7 @@ sbol:displayId "codon_optimization_activity" ; sbol:name "Codon optimization activity" ; sbol:type sbol:design ; - prov:endedAtTime "2020-08-30T22:25:17.44Z" ; + prov:endedAtTime "2020-08-30T16:37:18.635Z" ; prov:qualifiedAssociation ; prov:qualifiedUsage , ; - prov:startedAtTime "2019-07-29T22:25:17.44Z" . + prov:startedAtTime "2019-07-29T16:37:18.635Z" . diff --git a/libSBOLj3/output/toggle_switch/toggle_switch.jsonld b/libSBOLj3/output/toggle_switch/toggle_switch.jsonld index fc13b21..38c6568 100644 --- a/libSBOLj3/output/toggle_switch/toggle_switch.jsonld +++ b/libSBOLj3/output/toggle_switch/toggle_switch.jsonld @@ -28,7 +28,6 @@ "displayId" : "LacI_producer", "hasFeature" : [ "LacI_producer/subcomponent_3", "LacI_producer/TetR_protein", "LacI_producer/subcomponent_6", "LacI_producer/GFP", "LacI_producer/subcomponent_2", "LacI_producer/subcomponent_5", "LacI_producer/subcomponent_4", "LacI_producer/subcomponent_1", "LacI_producer/LacI_protein", "LacI_producer/aTC" ], "hasInteraction" : [ "LacI_producer/interaction_3", "LacI_producer/interaction_4", "LacI_producer/interaction_2", "LacI_producer/interaction_1" ], - "hasSequence" : "LacI_producer/sequence_1", "name" : "LacI_producer", "role" : "SO:0000704", "type" : "SBO:0000251" @@ -130,14 +129,6 @@ "displayId" : "participation_3", "participant" : "TetR_producer/atC_TetR", "role" : "SBO:0000011" - }, { - "@id" : "LacI_producer/sequence_1", - "@type" : "sbol:Sequence", - "description" : "LacI_producer sequence", - "displayId" : "sequence_1", - "elements" : "", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "LacI_producer" }, { "@id" : "LacI_producer/subcomponent_1", "@type" : "sbol:SubComponent", @@ -189,7 +180,6 @@ "displayId" : "TetR_producer", "hasFeature" : [ "TetR_producer/subcomponent_3", "TetR_producer/IPTG", "TetR_producer/subcomponent_1", "TetR_producer/atC_TetR", "TetR_producer/subcomponent_4", "TetR_producer/subcomponent_2", "TetR_producer/LacI_protein", "TetR_producer/TetR_protein", "TetR_producer/IPTG_LacI" ], "hasInteraction" : [ "TetR_producer/interaction_3", "TetR_producer/interaction_1", "TetR_producer/interaction_2" ], - "hasSequence" : "TetR_producer/sequence_1", "name" : "TetR_producer", "role" : "SO:0000704", "type" : "SBO:0000251" @@ -278,14 +268,6 @@ "displayId" : "participation_3", "participant" : "TetR_producer/IPTG_LacI", "role" : "SBO:0000011" - }, { - "@id" : "TetR_producer/sequence_1", - "@type" : "sbol:Sequence", - "description" : "TetR_producer sequence", - "displayId" : "sequence_1", - "elements" : "", - "encoding" : "sbol:iupacNucleicAcid", - "name" : "TetR_producer" }, { "@id" : "TetR_producer/subcomponent_1", "@type" : "sbol:SubComponent", @@ -521,17 +503,6 @@ "@id" : "http://sbols.org/v3#hasInteraction", "@type" : "@id" }, - "hasSequence" : { - "@id" : "http://sbols.org/v3#hasSequence", - "@type" : "@id" - }, - "encoding" : { - "@id" : "http://sbols.org/v3#encoding", - "@type" : "@id" - }, - "elements" : { - "@id" : "http://sbols.org/v3#elements" - }, "subject" : { "@id" : "http://sbols.org/v3#subject", "@type" : "@id" diff --git a/libSBOLj3/output/toggle_switch/toggle_switch.nt b/libSBOLj3/output/toggle_switch/toggle_switch.nt index e286e93..e44cb1e 100644 --- a/libSBOLj3/output/toggle_switch/toggle_switch.nt +++ b/libSBOLj3/output/toggle_switch/toggle_switch.nt @@ -203,7 +203,6 @@ . . "LacI_producer" . - . . . . @@ -218,12 +217,6 @@ . "participation_1" . . - "LacI_producer" . - . - "" . - "sequence_1" . - "LacI_producer sequence" . - . . . . @@ -246,7 +239,6 @@ . . "TetR_producer" . - . "TetR_producer" . . . @@ -277,12 +269,6 @@ . "participation_2" . . - "TetR_producer" . - . - "" . - "sequence_1" . - "TetR_producer sequence" . - . . . "subcomponent_4" . diff --git a/libSBOLj3/output/toggle_switch/toggle_switch.rdf b/libSBOLj3/output/toggle_switch/toggle_switch.rdf index cc3009e..7579343 100644 --- a/libSBOLj3/output/toggle_switch/toggle_switch.rdf +++ b/libSBOLj3/output/toggle_switch/toggle_switch.rdf @@ -109,9 +109,6 @@ TetR_producer - - - TetR_producer @@ -394,9 +391,6 @@ LacI_producer - - - @@ -504,18 +498,4 @@ IPTG_LacI IPTG_LacI complex - - LacI_producer - - - sequence_1 - LacI_producer sequence - - - TetR_producer - - - sequence_1 - TetR_producer sequence - diff --git a/libSBOLj3/output/toggle_switch/toggle_switch.rj b/libSBOLj3/output/toggle_switch/toggle_switch.rj index 99140be..c97cd77 100644 --- a/libSBOLj3/output/toggle_switch/toggle_switch.rj +++ b/libSBOLj3/output/toggle_switch/toggle_switch.rj @@ -128,39 +128,6 @@ ] } , - "https://sbolstandard.org/examples/TetR_producer/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "TetR_producer" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "TetR_producer sequence" - } - ] - } - , "https://sbolstandard.org/examples/TetR_producer/interaction_1" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , @@ -647,11 +614,6 @@ "value" : "http://sbols.org/v3#Component" } ] , - "http://sbols.org/v3#hasSequence" : [ { - "type" : "uri" , - "value" : "https://sbolstandard.org/examples/TetR_producer/sequence_1" - } - ] , "http://sbols.org/v3#hasFeature" : [ { "type" : "uri" , "value" : "https://sbolstandard.org/examples/TetR_producer/atC_TetR" @@ -1059,11 +1021,6 @@ "value" : "http://sbols.org/v3#Component" } ] , - "http://sbols.org/v3#hasSequence" : [ { - "type" : "uri" , - "value" : "https://sbolstandard.org/examples/LacI_producer/sequence_1" - } - ] , "http://sbols.org/v3#hasFeature" : [ { "type" : "uri" , "value" : "https://sbolstandard.org/examples/LacI_producer/TetR_protein" @@ -1677,39 +1634,6 @@ ] } , - "https://sbolstandard.org/examples/LacI_producer/sequence_1" : { - "http://sbols.org/v3#displayId" : [ { - "type" : "literal" , - "value" : "sequence_1" - } - ] , - "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#Sequence" - } - ] , - "http://sbols.org/v3#elements" : [ { - "type" : "literal" , - "value" : "" - } - ] , - "http://sbols.org/v3#name" : [ { - "type" : "literal" , - "value" : "LacI_producer" - } - ] , - "http://sbols.org/v3#encoding" : [ { - "type" : "uri" , - "value" : "http://sbols.org/v3#iupacNucleicAcid" - } - ] , - "http://sbols.org/v3#description" : [ { - "type" : "literal" , - "value" : "LacI_producer sequence" - } - ] - } - , "https://sbolstandard.org/examples/ter_lacI" : { "http://sbols.org/v3#displayId" : [ { "type" : "literal" , diff --git a/libSBOLj3/output/toggle_switch/toggle_switch.ttl b/libSBOLj3/output/toggle_switch/toggle_switch.ttl index cd3e856..57f9b4e 100644 --- a/libSBOLj3/output/toggle_switch/toggle_switch.ttl +++ b/libSBOLj3/output/toggle_switch/toggle_switch.ttl @@ -267,7 +267,6 @@ sbol:displayId "LacI_producer" ; sbol:hasFeature , , , , , , , , , ; sbol:hasInteraction , , , ; - sbol:hasSequence ; sbol:name "LacI_producer" ; sbol:role SO:0000704 ; sbol:type SBO:0000251 . @@ -278,14 +277,6 @@ sbol:participant ; sbol:role SBO:0000010 . - - a sbol:Sequence ; - sbol:description "LacI_producer sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "LacI_producer" . - a sbol:Interaction ; sbol:displayId "interaction_4" ; @@ -310,7 +301,6 @@ sbol:displayId "TetR_producer" ; sbol:hasFeature , , , , , , , , ; sbol:hasInteraction , , ; - sbol:hasSequence ; sbol:name "TetR_producer" ; sbol:role SO:0000704 ; sbol:type SBO:0000251 . @@ -340,14 +330,6 @@ sbol:participant ; sbol:role SBO:0000011 . - - a sbol:Sequence ; - sbol:description "TetR_producer sequence" ; - sbol:displayId "sequence_1" ; - sbol:elements "" ; - sbol:encoding sbol:iupacNucleicAcid ; - sbol:name "TetR_producer" . - a sbol:SubComponent ; sbol:displayId "subcomponent_4" ; diff --git a/libSBOLj3/src/main/java/org/sbolstandard/api/SBOLAPI.java b/libSBOLj3/src/main/java/org/sbolstandard/api/SBOLAPI.java index 06f5487..cfbc0a4 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/api/SBOLAPI.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/api/SBOLAPI.java @@ -208,29 +208,32 @@ public static void appendComponent(SBOLDocument document, Component parent, Comp SubComponent subComponent=parent.createSubComponent(append(parent.getUri(), localName), child.getUri()); subComponent.setOrientation(Orientation.inline); - List sequences= parent.getSequences(); - Sequence sequence=null; - if (sequences!=null && sequences.size()>0) + if (child.getSequences()!=null && child.getSequences().size()>0) { - sequence=(Sequence)document.getIdentified(sequences.get(0),Sequence.class); - } - else - { - sequence=createSequence(document, parent, Encoding.NucleicAcid, ""); - } - - - if ( child.getSequences()!=null && child.getSequences().size()>0) - { - URI childSequenceUri=child.getSequences().get(0); - Sequence childSequence=(Sequence)document.getIdentified(childSequenceUri, Sequence.class); - sequence.setElements(sequence.getElements() + childSequence.getElements()); - String locationLocalName=createLocalName(DataModel.Location.uri, subComponent.getLocations()); - URI locationUri=append(subComponent.getUri(),locationLocalName); - int start=sequence.getElements().length() + 1; - int end=start + childSequence.getElements().length()-1; - LocationBuilder builder=new Location.RangeLocationBuilder(locationUri, start, end); - subComponent.createLocation(builder); + List sequences= parent.getSequences(); + Sequence sequence=null; + if (sequences!=null && sequences.size()>0) + { + sequence=(Sequence)document.getIdentified(sequences.get(0),Sequence.class); + } + else + { + sequence=createSequence(document, parent, Encoding.NucleicAcid, ""); + } + + + if ( child.getSequences()!=null && child.getSequences().size()>0) + { + URI childSequenceUri=child.getSequences().get(0); + Sequence childSequence=(Sequence)document.getIdentified(childSequenceUri, Sequence.class); + sequence.setElements(sequence.getElements() + childSequence.getElements()); + String locationLocalName=createLocalName(DataModel.Location.uri, subComponent.getLocations()); + URI locationUri=append(subComponent.getUri(),locationLocalName); + int start=sequence.getElements().length() + 1; + int end=start + childSequence.getElements().length()-1; + LocationBuilder builder=new Location.RangeLocationBuilder(locationUri, start, end); + subComponent.createLocation(builder); + } } } @@ -280,7 +283,7 @@ public static SubComponent addSubComponent(Component parent, Component child) th public static Sequence createSequence(SBOLDocument doc, Component component, Encoding encoding, String elements) throws SBOLGraphException { String localName=createLocalName(DataModel.Sequence.uri, component.getSequences()); - Sequence seq=createSequence(doc, append(component.getUri(),localName), component.getName(), localName, component.getName() + " sequence" , elements, encoding); + Sequence seq=createSequence(doc, URI.create(component.getUri().toString() + "_" + localName), component.getName(), localName, component.getName() + " sequence" , elements, encoding); component.setSequences(Arrays.asList(seq.getUri())); return seq; } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Component.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Component.java index ae39870..c6326cc 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Component.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Component.java @@ -71,14 +71,14 @@ public void setRoles(List roles) { public List getSequences() { if (sequences==null) { - sequences=RDFUtil.getPropertiesAsURIs(this.resource, URI.create("http://sbols.org/v3#hasSequence")); + sequences=RDFUtil.getPropertiesAsURIs(this.resource, DataModel.Component.sequence); } return sequences; } public void setSequences(List sequences) { this.sequences = sequences; - RDFUtil.setProperty(resource, URI.create("http://sbols.org/v3#hasSequence"), sequences); + RDFUtil.setProperty(resource, DataModel.Component.sequence, sequences); } //Features diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Feature.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Feature.java index 2f0c8c3..f9d8a70 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Feature.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Feature.java @@ -44,7 +44,7 @@ public Orientation getOrientation() { URI value=RDFUtil.getPropertyAsURI(this.resource, DataModel.orientation); if (value!=null) { - orientation=Orientation.valueOf(value.toString()); + orientation=Orientation.get(value); } } return orientation; @@ -52,7 +52,7 @@ public Orientation getOrientation() { public void setOrientation(Orientation orientation) { this.orientation = orientation; - RDFUtil.setProperty(this.resource, DataModel.orientation, this.orientation.getUrl()); + RDFUtil.setProperty(this.resource, DataModel.orientation, this.orientation.getUri()); } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Identified.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Identified.java index 496fc9f..dab35f8 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Identified.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Identified.java @@ -174,12 +174,13 @@ protected List addToList(List items, URI property, if (resources!=null && resources.size()>0) { items=new ArrayList(); + for (Resource res:resources) + { + Identified identified=createIdentified(res, identifiedClass); + items.add((T)identified); + } } - for (Resource res:resources) - { - Identified identified=createIdentified(res, identifiedClass); - items.add((T)identified); - } + } return items; } @@ -232,12 +233,13 @@ protected List addToList(List items, URI property, if (resources!=null && resources.size()>0) { items=new ArrayList(); + for (Resource res:resources) + { + Identified identified=createIdentified(res, identifiedClass); + items.add((T)identified); + } } - for (Resource res:resources) - { - Identified identified=createIdentified(res, identifiedClass); - items.add((T)identified); - } + } return items; } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Interaction.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Interaction.java index 46dd556..93b0b29 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Interaction.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Interaction.java @@ -10,8 +10,8 @@ import org.sbolstandard.util.SBOLGraphException; import org.sbolstandard.vocabulary.DataModel; -public class Interaction extends Feature{ - private List types=new ArrayList(); +public class Interaction extends Identified{ + private List types=null; private List participations=null; protected Interaction(Model model,URI uri) throws SBOLGraphException diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Location.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Location.java index 9529c09..cfabfa7 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Location.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Location.java @@ -34,7 +34,7 @@ public Orientation getOrientation() { URI value=RDFUtil.getPropertyAsURI(this.resource, DataModel.orientation); if (value!=null) { - orientation=Orientation.valueOf(value.toString()); + orientation=Orientation.get(value); } } return orientation; @@ -42,7 +42,7 @@ public Orientation getOrientation() { public void setOrientation(Orientation orientation) { this.orientation = orientation; - RDFUtil.setProperty(this.resource, DataModel.orientation, this.orientation.getUrl()); + RDFUtil.setProperty(this.resource, DataModel.orientation, this.orientation.getUri()); } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Participation.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Participation.java index 692c3a1..ff5292b 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Participation.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Participation.java @@ -10,8 +10,8 @@ import org.sbolstandard.util.SBOLGraphException; import org.sbolstandard.vocabulary.DataModel; -public class Participation extends Feature{ - private List roles=new ArrayList(); +public class Participation extends Identified{ + private List roles=null; private URI participant=null; protected Participation(Model model,URI uri) throws SBOLGraphException diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/SBOLDocument.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/SBOLDocument.java index 1ec377d..a78e7d5 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/SBOLDocument.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/SBOLDocument.java @@ -53,10 +53,10 @@ public class SBOLDocument { private List unitDivisions; private List unitExponentiations; private List prefixedUnits; - private List measures; + //private List measures; - public Model getModel() { + public Model getRDFModel() { return model; } @@ -124,10 +124,7 @@ public Component createComponent(URI uri, List types) throws SBOLGraphExcep Component component = new Component(this.model, uri); component.setTypes(types); - if (components == null) { - components = new ArrayList(); - } - components.add(component); + addToInMemoryList(component, components); return component; } @@ -136,13 +133,9 @@ public List getSequences() throws SBOLGraphException { return sequences; } - public Sequence createSequence(URI uri) throws SBOLGraphException { Sequence sequence = new Sequence(this.model, uri); - if (sequences == null) { - sequences = new ArrayList(); - } - sequences.add(sequence); + addToInMemoryList(sequence, sequences); return sequence; } @@ -182,7 +175,6 @@ public ExperimentalData createExperimentalData(URI uri) throws SBOLGraphExceptio return experimentalData; } - public List getModels() throws SBOLGraphException { this.models=addToList(model, this.models, DataModel.Model.uri,org.sbolstandard.entity.Model.class); return models; @@ -245,10 +237,7 @@ public Attachment createAttachment(URI uri, URI source) throws SBOLGraphExceptio public Agent createAgent(URI uri) throws SBOLGraphException { Agent agent = new Agent(this.model, uri) {}; - if (agents == null) { - agents = new ArrayList(); - } - agents.add(agent); + addToInMemoryList(agent, agents); return agent; } @@ -260,10 +249,7 @@ public List getAgents() throws SBOLGraphException { public Plan createPlan(URI uri) throws SBOLGraphException { Plan plan = new Plan(this.model, uri) {}; - if (plans == null) { - plans = new ArrayList(); - } - plans.add(plan); + addToInMemoryList(plan, plans); return plan; } @@ -275,10 +261,7 @@ public List getPlans() throws SBOLGraphException { public Activity createActivity(URI uri) throws SBOLGraphException { Activity activity = new Activity(this.model, uri) {}; - if (activities == null) { - activities = new ArrayList(); - } - activities.add(activity); + addToInMemoryList(activity, activities); return activity; } @@ -298,10 +281,7 @@ public SIPrefix createSIPrefix(URI uri, String symbol, String name, float factor SIPrefix prefix = new SIPrefix(this.model, uri) {}; initialisePrefix(prefix, symbol, name, factor); - if (siPrefixes == null) { - siPrefixes = new ArrayList(); - } - siPrefixes.add(prefix); + addToInMemoryList(prefix, siPrefixes); return prefix; } @@ -314,10 +294,7 @@ public BinaryPrefix createBinaryPrefix(URI uri, String symbol, String name, floa BinaryPrefix prefix = new BinaryPrefix(this.model, uri) {}; initialisePrefix(prefix, symbol, name, factor); - if (binaryPrefixes == null) { - binaryPrefixes = new ArrayList(); - } - binaryPrefixes.add(prefix); + addToInMemoryList(prefix, binaryPrefixes); return prefix; } @@ -331,10 +308,7 @@ public SingularUnit createSingularUnit(URI uri, String symbol, String name) thro SingularUnit unit = new SingularUnit(this.model, uri) {}; unit.setSymbol(symbol); unit.setLabel(name); - if (singularUnits== null) { - singularUnits = new ArrayList(); - } - singularUnits.add(unit); + addToInMemoryList(unit, singularUnits); return unit; } @@ -350,10 +324,7 @@ public UnitMultiplication createUnitMultiplication(URI uri, String symbol, Strin unit.setLabel(name); unit.setTerm1(unit1); unit.setTerm2(unit2); - if (unitMultiplications== null) { - unitMultiplications = new ArrayList(); - } - unitMultiplications.add(unit); + addToInMemoryList(unit, unitMultiplications); return unit; } @@ -369,10 +340,7 @@ public UnitDivision createUnitDivision(URI uri, String symbol, String name, URI unit.setLabel(name); unit.setNumerator(numerator); unit.setDenominator(denominator); - if (unitDivisions== null) { - unitDivisions = new ArrayList(); - } - unitDivisions.add(unit); + addToInMemoryList(unit, unitDivisions); return unit; } @@ -388,10 +356,7 @@ public UnitExponentiation createUnitExponentiation(URI uri, String symbol, Strin unit.setLabel(name); unit.setBase(baseUnit); unit.setExponent(exponent); - if (unitExponentiations== null) { - unitExponentiations = new ArrayList(); - } - unitExponentiations.add(unit); + addToInMemoryList(unit, unitExponentiations); return unit; } @@ -408,10 +373,7 @@ public PrefixedUnit createPrexiedUnit(URI uri, String symbol, String name, URI u unit.setLabel(name); unit.setUnit(unitURI); unit.setPrefix(prefix); - if (prefixedUnits== null) { - prefixedUnits = new ArrayList(); - } - prefixedUnits.add(unit); + addToInMemoryList(unit, prefixedUnits); return unit; } @@ -420,7 +382,7 @@ public List getPrefixedUnits() throws SBOLGraphException { return prefixedUnits; } - public Measure createMeasure(URI uri, float value, URI unit) throws SBOLGraphException { + /*public Measure createMeasure(URI uri, float value, URI unit) throws SBOLGraphException { Measure measure = new Measure(this.model, uri) {}; measure.setValue(value); @@ -431,12 +393,12 @@ public Measure createMeasure(URI uri, float value, URI unit) throws SBOLGraphExc measures.add(measure); return measure; } - - public List getMeasures() throws SBOLGraphException { + */ + /*public List getMeasures() throws SBOLGraphException { this.measures=addToList(model, this.measures, MeasureDataModel.Measure.uri,Measure.class); return measures; } - + */ public Identified getIdentified(URI uri, Class identified) throws SBOLGraphException { Resource res=this.model.getResource(uri.toString()); @@ -478,15 +440,18 @@ protected Identified createIdentified(Resource res, Class private List addToList(Model model, List items, URI entityType, Class identifiedClass) throws SBOLGraphException { - List resources=RDFUtil.getResourcesOfType(model, entityType); - if (resources!=null && resources.size()>0) - { - items=new ArrayList(); - } - for (Resource resource:resources) + if (items==null) { - Identified identified=createIdentified(resource, identifiedClass) ; - items.add((T)identified); + List resources=RDFUtil.getResourcesOfType(model, entityType); + if (resources!=null && resources.size()>0) + { + items=new ArrayList(); + for (Resource resource:resources) + { + Identified identified=createIdentified(resource, identifiedClass) ; + items.add((T)identified); + } + } } return items; } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/Sequence.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/Sequence.java index 477a1c5..bdcc841 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/Sequence.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/Sequence.java @@ -6,6 +6,7 @@ import org.apache.jena.rdf.model.Resource; import org.sbolstandard.util.RDFUtil; import org.sbolstandard.util.SBOLGraphException; +import org.sbolstandard.vocabulary.DataModel; import org.sbolstandard.vocabulary.Encoding; public class Sequence extends TopLevel { @@ -25,23 +26,23 @@ protected Sequence(Resource resource) public String getElements() { if (elements==null) { - elements=RDFUtil.getPropertyAsString(this.resource, URI.create("http://sbols.org/v3#elements")); + elements=RDFUtil.getPropertyAsString(this.resource, DataModel.Sequence.elements); } return elements; } public void setElements(String elements) { this.elements = elements; - RDFUtil.setProperty(this.resource, URI.create("http://sbols.org/v3#elements"), this.elements); + RDFUtil.setProperty(this.resource, DataModel.Sequence.elements, this.elements); } public Encoding getEncoding() { if (encoding==null) { - String encodingValue=RDFUtil.getPropertyAsString(this.resource, URI.create("http://sbols.org/v3#elements")); + URI encodingValue=RDFUtil.getPropertyAsURI(this.resource, DataModel.Sequence.encoding); if (encodingValue!=null) { - encoding=Encoding.valueOf(encodingValue); + encoding=Encoding.get(encodingValue); } } return encoding; @@ -49,12 +50,12 @@ public Encoding getEncoding() { public void setEncoding(Encoding encoding) { this.encoding = encoding; - RDFUtil.setProperty(this.resource, URI.create("http://sbols.org/v3#encoding"), this.encoding.getUrl()); + RDFUtil.setProperty(this.resource, DataModel.Sequence.encoding, this.encoding.getUri()); } public URI getResourceType() { - return URI.create("http://sbols.org/v3#Sequence"); + return DataModel.Sequence.uri; } } \ No newline at end of file diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/SubComponent.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/SubComponent.java index a4e7ae2..9167fd7 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/SubComponent.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/SubComponent.java @@ -62,12 +62,14 @@ public List getLocations() throws SBOLGraphException { if (locations==null) { List resources=RDFUtil.getResourcesWithProperty (resource, DataModel.SubComponent.location); - for (Resource res:resources) + if (resources!=null) { - Location location= LocationFactory.create(res); - locations.add(location); + for (Resource res:resources) + { + Location location= LocationFactory.create(res); + locations.add(location); + } } - } return locations; } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Measure.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Measure.java index 1e52bad..d003d70 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Measure.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Measure.java @@ -15,7 +15,7 @@ public class Measure extends Identified{ - private float value; + private float value=Float.NaN; private List types; private URI unit; @@ -56,7 +56,7 @@ public void setValue(float value) { */ public float getValue() throws SBOLGraphException { - if (this.value==Float.NaN) + if (Float.isNaN(this.value)) { String valueString=RDFUtil.getPropertyAsString(this.resource, MeasureDataModel.Measure.value); if (valueString!=null) diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Prefix.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Prefix.java index 437564d..d5d0400 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Prefix.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/Prefix.java @@ -29,11 +29,13 @@ protected Prefix(Resource resource) public void setFactor(float factor) { this.factor = factor; String factorString=String.valueOf(factor); - RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factorString); + RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factorString); + //RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factor); + } public float getFactor() throws SBOLGraphException { - if (this.factor==Float.NaN) + if (Float.isNaN(this.factor)) { String factorString=RDFUtil.getPropertyAsString(this.resource, MeasureDataModel.Prefix.factor); if (factorString!=null) diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/PrefixedUnit.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/PrefixedUnit.java index 5138bcb..5a8ec97 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/PrefixedUnit.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/PrefixedUnit.java @@ -7,7 +7,7 @@ import org.sbolstandard.util.SBOLGraphException; import org.sbolstandard.vocabulary.MeasureDataModel; -public abstract class PrefixedUnit extends Unit{ +public class PrefixedUnit extends Unit{ private URI prefix; private URI unit; diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/SingularUnit.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/SingularUnit.java index ea7f257..b113411 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/SingularUnit.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/SingularUnit.java @@ -27,13 +27,13 @@ protected SingularUnit(Resource resource) public void setFactor(float factor) { this.factor = factor; String factorString=String.valueOf(factor); - //RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factorString); - RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factor); + RDFUtil.setProperty(resource, MeasureDataModel.SingularUnit.factor, factorString); + //RDFUtil.setProperty(resource, MeasureDataModel.Prefix.factor, factor); } public float getFactor() throws SBOLGraphException { - if (this.factor==Float.NaN) + if (Float.isNaN(this.factor)) { String factorString=RDFUtil.getPropertyAsString(this.resource, MeasureDataModel.SingularUnit.factor); if (factorString!=null) @@ -59,14 +59,14 @@ public float getFactor() throws SBOLGraphException { public URI getUnit() { if (unit==null) { - unit=RDFUtil.getPropertyAsURI(this.resource, MeasureDataModel.PrefixedUnit.unit); + unit=RDFUtil.getPropertyAsURI(this.resource, MeasureDataModel.SingularUnit.unit); } return unit; } public void setUnit(URI unit) { this.unit = unit; - RDFUtil.setProperty(resource, MeasureDataModel.PrefixedUnit.unit, unit); + RDFUtil.setProperty(resource, MeasureDataModel.SingularUnit.unit, unit); } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitDivision.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitDivision.java index e7e026f..4e681d2 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitDivision.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitDivision.java @@ -7,7 +7,7 @@ import org.sbolstandard.util.SBOLGraphException; import org.sbolstandard.vocabulary.MeasureDataModel; -public abstract class UnitDivision extends CompountUnit{ +public class UnitDivision extends CompountUnit{ private URI numerator; private URI denominator; diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitExponentiation.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitExponentiation.java index e0fb5ec..8c9f676 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitExponentiation.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitExponentiation.java @@ -9,7 +9,7 @@ import org.sbolstandard.vocabulary.DataModel; import org.sbolstandard.vocabulary.MeasureDataModel; -public abstract class UnitExponentiation extends CompountUnit{ +public class UnitExponentiation extends CompountUnit{ private URI base; private int exponent=Integer.MIN_VALUE; diff --git a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitMultiplication.java b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitMultiplication.java index 30c6652..8af89f9 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitMultiplication.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/entity/measure/UnitMultiplication.java @@ -7,7 +7,7 @@ import org.sbolstandard.util.SBOLGraphException; import org.sbolstandard.vocabulary.MeasureDataModel; -public abstract class UnitMultiplication extends CompountUnit{ +public class UnitMultiplication extends CompountUnit{ private URI term1; private URI term2; diff --git a/libSBOLj3/src/main/java/org/sbolstandard/io/SBOLWriter.java b/libSBOLj3/src/main/java/org/sbolstandard/io/SBOLWriter.java index 6803380..2223d3f 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/io/SBOLWriter.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/io/SBOLWriter.java @@ -23,7 +23,7 @@ public class SBOLWriter{ public static String write(SBOLDocument doc, String format) throws IOException { - String output=RDFUtil.write(doc.getModel(), format, getTopLevelResources(doc), doc.getBaseURI()); + String output=RDFUtil.write(doc.getRDFModel(), format, getTopLevelResources(doc), doc.getBaseURI()); return output; } @@ -61,7 +61,7 @@ private static Resource[] getTopLevelResources(SBOLDocument doc) public static void write(SBOLDocument doc, File file, String format) throws FileNotFoundException, IOException { - RDFUtil.write(doc.getModel(), file, format, getTopLevelResources(doc), doc.getBaseURI()); + RDFUtil.write(doc.getRDFModel(), file, format, getTopLevelResources(doc), doc.getBaseURI()); } public static SBOLDocument read(String sbolData, String format) diff --git a/libSBOLj3/src/main/java/org/sbolstandard/util/RDFUtil.java b/libSBOLj3/src/main/java/org/sbolstandard/util/RDFUtil.java index b085865..d8e21cb 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/util/RDFUtil.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/util/RDFUtil.java @@ -154,11 +154,15 @@ public static void addProperty(Resource resource, URI property, List values public static List getResourcesOfType(Model rdfModel,URI type) { Resource typeResource=rdfModel.createResource(type.toString()); - ArrayList resources=new ArrayList(); + ArrayList resources=null; for (ResIterator iterator = rdfModel.listResourcesWithProperty(RDF.type, typeResource);iterator.hasNext();) { + if (resources==null) + { + resources=new ArrayList(); + } Resource resource=iterator.next(); - resources.add(resource); + resources.add(resource); } return resources; } @@ -166,7 +170,7 @@ public static List getResourcesOfType(Model rdfModel,URI type) public static List getResourcesWithProperty(Resource resource,URI propertyURI) throws SBOLGraphException { - ArrayList resources=new ArrayList(); + ArrayList resources=null; Property property=resource.getModel().getProperty(propertyURI.toString()); StmtIterator it=resource.listProperties(property); while (it.hasNext()) @@ -175,6 +179,10 @@ public static List getResourcesWithProperty(Resource resource,URI prop RDFNode object=stmt.getObject(); if (object.isResource()) { + if (resources==null) + { + resources=new ArrayList(); + } resources.add(object.asResource()); } else @@ -188,7 +196,7 @@ public static List getResourcesWithProperty(Resource resource,URI prop public static List getResourcesWithProperty(Resource resource,URI propertyURI, URI entityType) throws SBOLGraphException { - ArrayList resources=new ArrayList(); + ArrayList resources=null; Property property=resource.getModel().getProperty(propertyURI.toString()); StmtIterator it=resource.listProperties(property); while (it.hasNext()) @@ -200,6 +208,10 @@ public static List getResourcesWithProperty(Resource resource,URI prop Resource objectResource=object.asResource(); if (hasType(resource.getModel(), objectResource, entityType)) { + if (resources==null) + { + resources=new ArrayList(); + } resources.add(objectResource); } } @@ -254,18 +266,16 @@ public static Resource getPropertyAsResource(Resource resource, URI propertyURI) } public static URI getPropertyAsURI(Resource resource, URI propertyURI) { - Property property=resource.getModel().getProperty(propertyURI.toString()); - Statement stmt = resource.getProperty(property); - - RDFNode object=stmt.getObject(); - if (object.isResource()) - { - return URI.create(object.asResource().getURI()); - } - else - { - return null; - } + URI result=null; + Property property=resource.getModel().getProperty(propertyURI.toString()); + Statement stmt = resource.getProperty(property); + if (stmt!=null){ + RDFNode object=stmt.getObject(); + if (object.isResource()){ + result= URI.create(object.asResource().getURI()); + } + } + return result; } @@ -279,7 +289,7 @@ public static URI getPropertyAsURI(Resource resource, URI propertyURI) { */ public static List getPropertiesAsURIs(Resource resource, URI propertyURI) { - ArrayList values=new ArrayList(); + ArrayList values=null; Property property=resource.getModel().getProperty(propertyURI.toString()); for (StmtIterator iterator=resource.listProperties(property);iterator.hasNext();) { @@ -287,6 +297,10 @@ public static List getPropertiesAsURIs(Resource resource, URI propertyURI) RDFNode object=stmt.getObject(); if (object.isResource()) { + if (values==null) + { + values=new ArrayList(); + } values.add(URI.create(object.asResource().getURI())); } } @@ -302,7 +316,7 @@ public static List getPropertiesAsURIs(Resource resource, URI propertyURI) */ public static List getPropertiesAsStrings(Resource resource, URI propertyURI) { - ArrayList values=new ArrayList(); + ArrayList values=null; Property property=resource.getModel().getProperty(propertyURI.toString()); for (StmtIterator iterator=resource.listProperties(property);iterator.hasNext();) { @@ -310,6 +324,10 @@ public static List getPropertiesAsStrings(Resource resource, URI propert RDFNode object=stmt.getObject(); if (!object.isResource()) { + if (values==null) + { + values=new ArrayList(); + } values.add(object.asLiteral().getLexicalForm()); } } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/DataModel.java b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/DataModel.java index d67e3cd..796088f 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/DataModel.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/DataModel.java @@ -39,12 +39,17 @@ public static final class Component public static URI interaction=URINameSpace.SBOL.local("hasInteraction"); public static URI constraint=URINameSpace.SBOL.local("hasConstraint"); public static URI hasInterface=URINameSpace.SBOL.local("hasInterface"); - public static URI model=URINameSpace.SBOL.local("hasModel"); + public static URI model=URINameSpace.SBOL.local("hasModel"); + public static URI sequence=URINameSpace.SBOL.local("hasSequence"); + } public static final class Sequence { public static URI uri=URINameSpace.SBOL.local("Sequence"); + public static URI elements=URINameSpace.SBOL.local("elements"); + public static URI encoding=URINameSpace.SBOL.local("encoding"); + } public static final class SubComponent diff --git a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Encoding.java b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Encoding.java index fe5f548..0299d43 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Encoding.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Encoding.java @@ -1,5 +1,7 @@ package org.sbolstandard.vocabulary; import java.net.URI; +import java.util.HashMap; +import java.util.Map; import org.sbolstandard.util.URINameSpace; public enum Encoding @@ -8,14 +10,33 @@ public enum Encoding AminoAcid(URINameSpace.SBOL.local("iupacAminoAcid")), SMILES(URI.create("http://www.opensmiles.org/opensmiles.html")); - private URI url; + private URI uri; - Encoding(URI envUrl) { - this.url = envUrl; + Encoding(URI uri) { + this.uri = uri; } - public URI getUrl() { - return url; + public URI getUri() { + return uri; } + + private static final Map lookup = new HashMap<>(); + + static + { + for(Encoding encoding: Encoding.values()) + { + lookup.put(encoding.getUri(), encoding); + } + } + + public static Encoding get(URI uri) + { + return lookup.get(uri); + } + + } + + diff --git a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/MeasureDataModel.java b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/MeasureDataModel.java index 88777a4..d1db36c 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/MeasureDataModel.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/MeasureDataModel.java @@ -38,6 +38,7 @@ public static final class SingularUnit { public static URI uri=URINameSpace.OM.local("SingularUnit"); public static URI factor=Prefix.factor; + public static URI unit=PrefixedUnit.unit; } diff --git a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Orientation.java b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Orientation.java index dc9900e..1aad8a7 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Orientation.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/vocabulary/Orientation.java @@ -1,6 +1,8 @@ package org.sbolstandard.vocabulary; import java.net.URI; +import java.util.HashMap; +import java.util.Map; import org.sbolstandard.util.URINameSpace; @@ -8,13 +10,29 @@ public enum Orientation { inline(URINameSpace.SBOL.local("inline")), reverseComplement(URINameSpace.SBOL.local("reverseComplement")); - private URI url; + private URI uri; - Orientation(URI envUrl) { - this.url = envUrl; + Orientation(URI uri) { + this.uri = uri; } - public URI getUrl() { - return url; + public URI getUri() { + return uri; } + + private static final Map lookup = new HashMap<>(); + + static + { + for(Orientation orientation : Orientation.values()) + { + lookup.put(orientation.getUri(), orientation); + } + } + + public static Orientation get(URI uri) + { + return lookup.get(uri); + } + } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/TestUtil.java b/libSBOLj3/src/test/java/org/sbolstandard/TestUtil.java index 730f637..33f5134 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/TestUtil.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/TestUtil.java @@ -3,13 +3,19 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; +import java.net.URI; +import java.util.Collections; +import java.util.List; -import org.sbolstandard.entity.Identified; -import org.sbolstandard.entity.SBOLDocument; -import org.sbolstandard.entity.TopLevel; -import org.sbolstandard.entity.provenance.Agent; +import org.apache.jena.datatypes.xsd.XSDDateTime; +import org.sbolstandard.entity.*; +import org.sbolstandard.entity.measure.*; +import org.sbolstandard.entity.provenance.*; import org.sbolstandard.io.SBOLWriter; import org.sbolstandard.util.SBOLGraphException; +import org.sbolstandard.vocabulary.DataModel; +import org.sbolstandard.vocabulary.MeasureDataModel; +import org.sbolstandard.vocabulary.ProvenanceDataModel; import static org.junit.Assert.*; @@ -38,32 +44,665 @@ public static void assertReadWrite(SBOLDocument doc) throws IOException, SBOLGra assertEqual(doc, doc2); } - //TODO: public static void assertEqual(SBOLDocument doc1, SBOLDocument doc2) throws SBOLGraphException { - if (doc1.getAgents()!=null) + assertEqualEntity(doc1.getActivities(), doc2,Activity.class); + assertEqualEntity(doc1.getAgents(), doc2,Agent.class); + assertEqualEntity(doc1.getAttachments(), doc2,Attachment.class); + assertEqualEntity(doc1.getBinaryPrefixes(), doc2,BinaryPrefix.class); + assertEqualEntity(doc1.getCollections(), doc2,Collection.class); + assertEqualEntity(doc1.getCombinatorialDerivations(), doc2,CombinatorialDerivation.class); + assertEqualEntity(doc1.getComponents(), doc2,Component.class); + assertEqualEntity(doc1.getExperimentalData(), doc2,ExperimentalData.class); + assertEqualEntity(doc1.getExperiments(), doc2,Experiment.class); + assertEqualEntity(doc1.getImplementations(), doc2,Implementation.class); + assertEqualEntity(doc1.getModels(), doc2,Model.class); + assertEqualEntity(doc1.getNamespaces(), doc2,Namespace.class); + assertEqualEntity(doc1.getPlans(), doc2,Plan.class); + assertEqualEntity(doc1.getPrefixedUnits(), doc2,PrefixedUnit.class); + assertEqualEntity(doc1.getSequences(), doc2,Sequence.class); + assertEqualEntity(doc1.getSingularUnits(), doc2,SingularUnit.class); + assertEqualEntity(doc1.getSIPrefixes(), doc2,SIPrefix.class); + assertEqualEntity(doc1.getUnitDivisions(), doc2,UnitDivision.class); + assertEqualEntity(doc1.getUnitExponentiations(), doc2,UnitExponentiation.class); + assertEqualEntity(doc1.getUnitMultiplications(), doc2,UnitMultiplication.class); + + /*if (doc1.getAgents()!=null) { for (Agent agent:doc1.getAgents()) { Agent agent2=(Agent) doc2.getIdentified(agent.getUri(), Agent.class); assertEqual(agent, agent2); } + }*/ + + } + + private static void assertEqualEntity(List entities, SBOLDocument doc2, Class classType) throws SBOLGraphException + { + if (entities!=null) + { + for (T entity:entities) + { + T entity2=(T) doc2.getIdentified(entity.getUri(), classType ); + assertEqualEntity(entity,entity2); + } } } - private static void assertEqual(TopLevel topLevel1, TopLevel topLevel2) + private static Identified getEntity(List entities, URI uri) { - assertEqual((Identified)topLevel1, (Identified)topLevel2); + if (entities!=null) + { + for (T entity:entities) + { + if (entity.getUri().equals(uri)) + { + return entity; + } + } + } + return null; + } + + + private static void assertEqualEntity(List entities, List entities2) throws SBOLGraphException + { + if (entities!=null && entities2!=null) + { + for (T entity:entities) + { + Identified entity2=getEntity(entities2, entity.getUri()); + assertEqualEntity(entity,entity2); + } + } } - private static void assertEqual(Identified identified1, Identified identified2) + private static void assertEqualEntity(Identified identified1, Identified identified2) throws SBOLGraphException { - assertEquals("Name:" + identified1.getName() + " - ", identified1.getName(),identified2.getName()); - assertEquals("Description:" + identified1.getDescription() + " - ", identified1.getDescription(),identified2.getDescription()); - assertEquals("DisplayId:" + identified1.getDisplayId() + " - ", identified1.getName(),identified2.getDisplayId()); - assertEquals("URI:" + identified1.getUri() + " - ", identified1.getUri(),identified2.getUri()); - assertEquals("WasDerivedFrom:" + identified1.getWasDerivedFrom() + " - ", identified1.getWasDerivedFrom(),identified2.getWasDerivedFrom()); + if (identified1!=null && identified2==null) + { + throw new SBOLGraphException("Could not compare " + identified1.getUri()); + } + + if (identified1 instanceof Activity) + { + assertEqualActivity((Activity)identified1, (Activity) identified2); + } + else if (identified1 instanceof Agent) + { + assertEqualAgent((Agent)identified1, (Agent) identified2); + } + else if (identified1 instanceof Attachment) + { + assertEqualAttachment((Attachment)identified1, (Attachment) identified2); + } + else if (identified1 instanceof BinaryPrefix) + { + assertEqualBinaryPrefix((BinaryPrefix)identified1, (BinaryPrefix) identified2); + } + else if (identified1 instanceof Collection) + { + assertEqualCollection((Collection)identified1, (Collection) identified2); + } + else if (identified1 instanceof CombinatorialDerivation) + { + assertEqualCombinatorialDerivation((CombinatorialDerivation)identified1, (CombinatorialDerivation) identified2); + } + + else if (identified1 instanceof Component) + { + assertEqualComponent((Component)identified1, (Component) identified2); + } + else if (identified1 instanceof ExperimentalData) + { + assertEqualExperimentalData((ExperimentalData)identified1, (ExperimentalData) identified2); + } + else if (identified1 instanceof Experiment) + { + assertEqualExperiment((Experiment)identified1, (Experiment) identified2); + } + else if (identified1 instanceof Implementation) + { + assertEqualImplementation((Implementation)identified1, (Implementation) identified2); + } + else if (identified1 instanceof Model) + { + assertEqualModel((Model)identified1, (Model) identified2); + } + else if (identified1 instanceof Namespace) + { + assertEqualNamespace((Namespace)identified1, (Namespace) identified2); + } + else if (identified1 instanceof Model) + { + assertEqualModel((Model)identified1, (Model) identified2); + } + else if (identified1 instanceof Plan) + { + assertEqualPlan((Plan)identified1, (Plan) identified2); + } + else if (identified1 instanceof PrefixedUnit) + { + assertEqualPrefixedUnit((PrefixedUnit)identified1, (PrefixedUnit) identified2); + } + else if (identified1 instanceof Sequence) + { + assertEqualSequence((Sequence)identified1, (Sequence)identified2); + } + else if (identified1 instanceof SingularUnit) + { + assertEqualSingularUnit((SingularUnit)identified1, (SingularUnit) identified2); + } + else if (identified1 instanceof SIPrefix) + { + assertEqualSIPrefix((SIPrefix)identified1, (SIPrefix) identified2); + } + else if (identified1 instanceof UnitDivision) + { + assertEqualUnitDivision((UnitDivision)identified1, (UnitDivision) identified2); + } - assert(identified1.getDescription().equals(identified2.getDescription())); + else if (identified1 instanceof UnitExponentiation) + { + assertEqualUnitExponentiation((UnitExponentiation)identified1, (UnitExponentiation) identified2); + } + else if (identified1 instanceof UnitMultiplication) + { + assertEqualUnitMultiplication((UnitMultiplication)identified1, (UnitMultiplication) identified2); + } + else if (identified1 instanceof Measure) + { + assertEqualMeasure((Measure)identified1, (Measure) identified2); + } + else if (identified1 instanceof Association) + { + assertEqualAssociation((Association)identified1, (Association) identified2); + } + else if (identified1 instanceof Usage) + { + assertEqualUsage((Usage)identified1, (Usage) identified2); + } + else if (identified1 instanceof VariableComponent) + { + assertEqualVariableComponent((VariableComponent)identified1, (VariableComponent) identified2); + } + else if (identified1 instanceof ExternallyDefined) + { + assertEqualExternallyDefined((ExternallyDefined)identified1, (ExternallyDefined) identified2); + } + else if (identified1 instanceof ComponentReference) + { + assertEqualComponentReference((ComponentReference)identified1, (ComponentReference) identified2); + } + else if (identified1 instanceof Constraint) + { + assertEqualConstraint((Constraint)identified1, (Constraint) identified2); + } + else if (identified1 instanceof LocalSubComponent) + { + assertEqualLocalSubComponent((LocalSubComponent)identified1, (LocalSubComponent) identified2); + } + else if (identified1 instanceof SequenceFeature) + { + assertEqualSequenceFeature((SequenceFeature)identified1, (SequenceFeature) identified2); + } + else if (identified1 instanceof SubComponent) + { + assertEqualSubComponent((SubComponent)identified1, (SubComponent) identified2); + } + else if (identified1 instanceof Interaction) + { + assertEqualInteraction((Interaction)identified1, (Interaction) identified2); + } + else if (identified1 instanceof Participation) + { + assertEqualParticipation((Participation)identified1, (Participation) identified2); + } + else + { + throw new SBOLGraphException ("No assert method has been defined for " + identified1.getUri()); + } + } + + private static void assertEqualActivity(Activity entity1, Activity entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getTypes(),entity2.getTypes(), ProvenanceDataModel.Activity.type); + assertEqual(entity1, entity2, entity1.getWasInformedBys(),entity2.getWasInformedBys(), ProvenanceDataModel.Activity.wasInformedBy); + assertEqual(entity1, entity2, entity1.getEndedAtTime(),entity2.getEndedAtTime(), ProvenanceDataModel.Activity.endedAtTime); + assertEqual(entity1, entity2, entity1.getStartedAtTime(),entity2.getStartedAtTime(), ProvenanceDataModel.Activity.startedAtTime); + assertEqualEntity(entity1.getAssociations(), entity2.getAssociations()); + assertEqualEntity(entity1.getUsages(), entity2.getUsages()); + } + } + + private static void assertEqualAssociation(Association entity1, Association entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getAgent(),entity2.getAgent(), ProvenanceDataModel.Association.agent); + assertEqual(entity1, entity2, entity1.getPlan(),entity2.getPlan(), ProvenanceDataModel.Association.plan); + assertEqual(entity1, entity2, entity1.getRoles(),entity2.getRoles(), ProvenanceDataModel.Association.role); + } + } + + private static void assertEqualUsage(Usage entity1, Usage entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getRoles(),entity2.getRoles(), ProvenanceDataModel.Usage.role); + assertEqual(entity1, entity2, entity1.getEntity(),entity2.getEntity(), ProvenanceDataModel.Usage.entity); + } + } + + private static void assertEqualAgent(Agent entity1, Agent entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + } + } + + private static void assertEqualAttachment(Attachment entity1, Attachment entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getFormat(),entity2.getFormat(), DataModel.Attachment.format); + assertEqual(entity1, entity2, entity1.getHash(),entity2.getHash(), DataModel.Attachment.hash); + assertEqual(entity1, entity2, entity1.getHashAlgorithm(),entity2.getHashAlgorithm(), DataModel.Attachment.hashAlgorithm); + assertEqual(entity1, entity2, entity1.getSource(),entity2.getSource(), DataModel.Attachment.source); + assertEqual(entity1, entity2, entity1.getSize(),entity2.getSize(), DataModel.Attachment.size); + } + } + + private static void assertEqualBinaryPrefix(BinaryPrefix entity1, BinaryPrefix entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualPrefix(entity1, entity2); + } + } + + private static void assertEqualSIPrefix(SIPrefix entity1, SIPrefix entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualPrefix(entity1, entity2); + } + } + + private static void assertEqualPrefix(Prefix entity1, Prefix entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getFactor(),entity2.getFactor(), MeasureDataModel.Prefix.factor); + } + } + + private static void assertEqualUnit(Unit entity1, Unit entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getComment(),entity2.getComment(), MeasureDataModel.Unit.comment); + assertEqual(entity1, entity2, entity1.getLabel(),entity2.getLabel(), MeasureDataModel.Unit.label); + assertEqual(entity1, entity2, entity1.getLongComment(),entity2.getLongComment(), MeasureDataModel.Unit.longComment); + assertEqual(entity1, entity2, entity1.getSymbol(),entity2.getSymbol(), MeasureDataModel.Unit.symbol); + assertEqualStrings(entity1, entity2, entity1.getAlternativeLabels(),entity2.getAlternativeLabels(), MeasureDataModel.Unit.alternativeLabel); + assertEqualStrings(entity1, entity2, entity1.getAlternativeSymbols(),entity2.getAlternativeSymbols(), MeasureDataModel.Unit.alternativeSymbol); + } + } + + + private static void assertEqualCollection(Collection entity1, Collection entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getTopLevels(),entity2.getTopLevels(), DataModel.Collection.member); + } + } + + private static void assertEqualNamespace(Namespace entity1, Namespace entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualCollection(entity1, entity2); + } + } + + private static void assertEqualCombinatorialDerivation(CombinatorialDerivation entity1, CombinatorialDerivation entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getStrategy(),entity2.getStrategy(), DataModel.CombinatorialDerivation.strategy); + assertEqual(entity1, entity2, entity1.getTemplate(),entity2.getTemplate(), DataModel.CombinatorialDerivation.template); + assertEqualEntity(entity1.getVariableComponents(), entity2.getVariableComponents()); + } + } + + private static void assertEqualVariableComponent(VariableComponent entity1, VariableComponent entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getCardinality(),entity2.getCardinality(), DataModel.VariableComponent.cardinality); + assertEqual(entity1, entity2, entity1.getSubComponent(),entity2.getSubComponent(), DataModel.VariableComponent.variable); + assertEqual(entity1, entity2, entity1.getVariantCollections(),entity2.getVariantCollections(), DataModel.VariableComponent.variantCollection); + assertEqual(entity1, entity2, entity1.getVariantDerivations(),entity2.getVariantDerivations(), DataModel.VariableComponent.variantDerivation); + assertEqual(entity1, entity2, entity1.getVariants(),entity2.getVariants(), DataModel.VariableComponent.variant); + } + } + + private static void assertEqualComponent(Component entity1, Component entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getModels(),entity2.getModels(), DataModel.Component.model); + assertEqual(entity1, entity2, entity1.getRoles(),entity2.getRoles(), DataModel.role); + assertEqual(entity1, entity2, entity1.getSequences(),entity2.getSequences(), DataModel.Component.sequence); + assertEqual(entity1, entity2, entity1.getTypes(),entity2.getTypes(), DataModel.type); + assertEqualInterface(entity1.getInterface(),entity2.getInterface()); + assertEqualEntity(entity1.getComponentReferences(), entity2.getComponentReferences()); + assertEqualEntity(entity1.getConstraints(), entity2.getConstraints()); + assertEqualEntity(entity1.getExternallyDefineds(), entity2.getExternallyDefineds()); + assertEqualEntity(entity1.getInteractions(), entity2.getInteractions()); + assertEqualEntity(entity1.getLocalSubComponents(), entity2.getLocalSubComponents()); + assertEqualEntity(entity1.getSequenceFeatures(), entity2.getSequenceFeatures()); + assertEqualEntity(entity1.getSubComponents(), entity2.getSubComponents()); + } + } + + private static void assertEqualInterface(Interface entity1, Interface entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getInputs(),entity2.getInputs(), DataModel.Interface.input); + assertEqual(entity1, entity2, entity1.getNonDirectionals(),entity2.getNonDirectionals(), DataModel.Interface.nondirectional); + assertEqual(entity1, entity2, entity1.getOutputs(),entity2.getOutputs(), DataModel.Interface.output); + } + } + + private static void assertEqualComponentReference(ComponentReference entity1, ComponentReference entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualFeature(entity1, entity2); + assertEqual(entity1, entity2, entity1.getFeature(),entity2.getFeature(), DataModel.ComponentReference.feature); + assertEqual(entity1, entity2, entity1.getInChildOf(),entity2.getInChildOf(), DataModel.ComponentReference.inChildOf); + } + } + + private static void assertEqualConstraint(Constraint entity1, Constraint entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getObject(),entity2.getObject(), DataModel.Constraint.object); + assertEqual(entity1, entity2, entity1.getSubject(),entity2.getSubject(), DataModel.Constraint.subject); + assertEqual(entity1, entity2, entity1.getRestriction(),entity2.getRestriction(), DataModel.Constraint.restriction); + } + } + + private static void assertEqualExternallyDefined(ExternallyDefined entity1, ExternallyDefined entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualFeature(entity1, entity2); + assertEqual(entity1, entity2, entity1.getDefinition(),entity2.getDefinition(), DataModel.ExternalyDefined.definition); + } + } + + private static void assertEqualLocalSubComponent(LocalSubComponent entity1, LocalSubComponent entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualFeature(entity1, entity2); + //TODO: assertEqualLocations(entity1, entity2, entity1.getLocations(),entity2.getLocations(), DataModel.SubComponent.location); + assertEqual(entity1, entity2, entity1.getTypes(),entity2.getTypes(), DataModel.type); + } + } + + private static void assertEqualFeature(Feature entity1, Feature entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + if (entity1.getOrientation()!=null) + { + assertEqual(entity1, entity2, entity1.getOrientation().getUri(),entity2.getOrientation().getUri(), DataModel.orientation); + } + assertEqual(entity1, entity2, entity1.getRoles(),entity2.getRoles(), DataModel.role); + } + } + + private static void assertEqualSequenceFeature(SequenceFeature entity1, SequenceFeature entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualFeature(entity1, entity2); + } + //TODO: assertEqualLocations(entity1, entity2, entity1.getLocations(),entity2.getLocations(), DataModel.SubComponent.location); + } + + private static void assertEqualSubComponent(SubComponent entity1, SubComponent entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualFeature(entity1, entity2); + //TODO: assertEqualLocations(entity1, entity2, entity1.getLocations(),entity2.getLocations(), DataModel.SubComponent.location); + //TODO: assertEqualLocations(entity1, entity2, entity1.getSourceLocations(),entity2.getSourceLocations(), DataModel.SubComponent.sourcelocation); + assertEqual(entity1, entity2, entity1.getIsInstanceOf(),entity2.getIsInstanceOf(), DataModel.SubComponent.instanceOf); + assertEqual(entity1, entity2, entity1.getRoleIntegration(),entity2.getRoleIntegration(), DataModel.SubComponent.roleIntegration); + } + } + + private static void assertEqualInteraction(Interaction entity1, Interaction entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqualEntity(entity1.getParticipations(), entity2.getParticipations()); + assertEqual(entity1, entity2, entity1.getTypes(),entity2.getTypes(), DataModel.type); + } + } + + private static void assertEqualParticipation(Participation entity1, Participation entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getParticipant(), entity2.getParticipant(),DataModel.Participation.participant); + assertEqual(entity1, entity2, entity1.getRoles(),entity2.getRoles(), DataModel.role); + } + } + + private static void assertEqualExperimentalData(ExperimentalData entity1, ExperimentalData entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + } + } + + private static void assertEqualExperiment(Experiment entity1, Experiment entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + } + } + + private static void assertEqualImplementation(Implementation entity1, Implementation entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getComponent(), entity2.getComponent(),DataModel.Implementation.built); + } + } + + private static void assertEqualModel(Model entity1, Model entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getFramework(), entity2.getFramework(),DataModel.Model.framework); + assertEqual(entity1, entity2, entity1.getLanguage(), entity2.getLanguage(),DataModel.Model.language); + assertEqual(entity1, entity2, entity1.getSource(), entity2.getSource(),DataModel.Model.source); + } + } + + private static void assertEqualPrefixedUnit(PrefixedUnit entity1, PrefixedUnit entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getPrefix(), entity2.getPrefix(),MeasureDataModel.PrefixedUnit.prefix); + assertEqual(entity1, entity2, entity1.getUnit(), entity2.getUnit(),MeasureDataModel.PrefixedUnit.unit); + } + } + + private static void assertEqualSingularUnit(SingularUnit entity1, SingularUnit entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getFactor(), entity2.getFactor(),MeasureDataModel.SingularUnit.factor); + assertEqual(entity1, entity2, entity1.getUnit(), entity2.getUnit(),MeasureDataModel.SingularUnit.unit); + } + } + private static void assertEqualSequence(Sequence entity1, Sequence entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getElements(), entity2.getElements(),DataModel.Sequence.elements); + assertEqual(entity1, entity2, entity1.getEncoding().getUri(), entity2.getEncoding().getUri(),DataModel.Sequence.encoding); + } + } + + private static void assertEqualUnitDivision(UnitDivision entity1, UnitDivision entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getDenominator(), entity2.getDenominator(),MeasureDataModel.UnitDivision.denominator); + assertEqual(entity1, entity2, entity1.getNumerator(), entity2.getNumerator(),MeasureDataModel.UnitDivision.numerator); + } + } + + private static void assertEqualUnitExponentiation (UnitExponentiation entity1, UnitExponentiation entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getBase(), entity2.getBase(),MeasureDataModel.UnitExponentiation.base); + assertEqual(entity1, entity2, entity1.getExponent(), entity2.getExponent(),MeasureDataModel.UnitExponentiation.base); + } + } + + private static void assertEqualUnitMultiplication(UnitMultiplication entity1, UnitMultiplication entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqualUnit(entity1, entity2); + assertEqual(entity1, entity2, entity1.getTerm1(), entity2.getTerm1(),MeasureDataModel.UnitMultiplication.term1); + assertEqual(entity1, entity2, entity1.getTerm2(), entity2.getTerm2(),MeasureDataModel.UnitMultiplication.term2); + } + } + + private static void assertEqualPlan(Plan entity1, Plan entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + } + } + + private static void assertEqualMeasure(Measure entity1, Measure entity2) throws SBOLGraphException + { + if (entity1!=null) + { + assertEqual(entity1, entity2); + assertEqual(entity1, entity2, entity1.getUnit(),entity2.getUnit(), MeasureDataModel.Measure.unit); + assertEqual(entity1, entity2, entity1.getValue(),entity2.getValue(), MeasureDataModel.Measure.value); + assertEqual(entity1, entity2, entity1.getTypes(),entity2.getTypes(), MeasureDataModel.Measure.type); + } + } + + private static void assertEqual(TopLevel topLevel1, TopLevel topLevel2) throws SBOLGraphException + { + assertEqual((Identified)topLevel1, (Identified)topLevel2); + assertEqual(topLevel1, topLevel1, topLevel1.getAttachments(),topLevel2.getAttachments(), DataModel.TopLevel.attachment); + } + + private static void assertEqual(Identified identified1, Identified identified2) throws SBOLGraphException + { + assertEqual(identified1, identified2, identified1.getName(),identified2.getName(), DataModel.Identified.name); + assertEqual(identified1, identified2, identified1.getDescription(),identified2.getDescription(), DataModel.Identified.description); + assertEqual(identified1, identified2, identified1.getDisplayId(),identified2.getDisplayId(), DataModel.Identified.displayId); + assertEqual(identified1, identified2, identified1.getUri(),identified2.getUri(), DataModel.Identified.uri); + assertEqual(identified1, identified2, identified1.getWasDerivedFrom(),identified2.getWasDerivedFrom(), DataModel.Identified.wasDerivedFrom); + assertEqual(identified1, identified2, identified1.getWasGeneratedBy(),identified2.getWasGeneratedBy(), DataModel.Identified.wasGeneratedBy); + assertEqualEntity(identified1.getMeasures(), identified2.getMeasures()); + } + + private static void assertEqual(Identified identified1, Identified identified2, String value1, String value2, URI property) + { + String message=String.format("Could not read the %s property. Entity:%s, Value1:%s, Value2:%s", property.toString(), identified1.getUri().toString(), value1, value2); + assertEquals(message, value1, value2); + } + + private static void assertEqual(Identified identified1, Identified identified2, URI value1, URI value2, URI property) + { + String message=String.format("Could not read the %s property. Entity:%s, Value1:%s, Value2:%s", property.toString(), identified1.getUri().toString(), value1, value2); + assertEquals(message, value1, value2); + } + + private static void assertEqual(Identified identified1, Identified identified2, float value1, float value2, URI property) + { + String message=String.format("Could not read the %s property. Entity:%s, Value1:%s, Value2:%s", property.toString(), identified1.getUri().toString(), String.valueOf(value1), String.valueOf(value2)); + assertEquals(message, String.valueOf(value1), String.valueOf(value2)); + } + + private static void assertEqual(Identified identified1, Identified identified2, XSDDateTime value1, XSDDateTime value2, URI property) + { + String message=String.format("Could not read the %s property. Entity:%s, Value1:%s, Value2:%s", property.toString(), identified1.getUri().toString(), value1, value2); + assertEquals(message, String.valueOf(value1), String.valueOf(value2)); + } + + private static void assertEqual(Identified identified1, Identified identified2, List value1, List value2, URI property) + { + if (value1!=null && value2!=null) + { + String message=String.format("Could not read the %s property. Entity: %s", property.toString(), identified1.getUri().toString()); + Collections.sort(value1); + Collections.sort(value2); + + assertEquals(message, value1, value2); + } + } + + private static void assertEqualStrings(Identified identified1, Identified identified2, List value1, List value2, URI property) + { + if (value1!=null && value2!=null) + { + String message=String.format("Could not read the %s property. Entity: %s", property.toString(), identified1.getUri().toString()); + Collections.sort(value1); + Collections.sort(value2); + + assertEquals(message, value1, value2); + } } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/ActivityTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/ActivityTest.java index 733b53b..266155e 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/ActivityTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/ActivityTest.java @@ -92,9 +92,7 @@ public void test() throws SBOLGraphException, IOException printActivity(doc2, act); } - - - + TestUtil.assertEqual(doc, doc2); } private void printActivity(SBOLDocument document, Activity activity) throws SBOLGraphException diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/AgentTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/AgentTest.java index 4dd0a48..e11bfdb 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/AgentTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/provenance/test/AgentTest.java @@ -37,7 +37,7 @@ public void test() throws SBOLGraphException, IOException System.out.println(SBOLWriter.write(doc, "Turtle")); - //TestUtil.assertReadWrite(doc); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AnnotationTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AnnotationTest.java index e9934f0..9ca0200 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AnnotationTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AnnotationTest.java @@ -79,6 +79,8 @@ public void testImplementation() throws SBOLGraphException, IOException System.out.println(output); printMetadata(doc2.getComponents().get(0)); + + TestUtil.assertReadWrite(doc); } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AttachmentTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AttachmentTest.java index f29e51a..4cc8ad2 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AttachmentTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/AttachmentTest.java @@ -24,7 +24,7 @@ public class AttachmentTest extends TestCase { public void testImplementation() throws SBOLGraphException, IOException { - String baseUri="http://parts.igem.org/Part:"; + String baseUri="https://sbolstandard.org/examples/"; SBOLDocument doc=new SBOLDocument(URI.create(baseUri)); Component TetR_protein=SBOLAPI.createComponent(doc, SBOLAPI.append(baseUri, "TetR_protein"), ComponentType.Protein.getUrl(), "TetR", "TetR_protein", "TetR protein", Role.TF); @@ -44,6 +44,7 @@ public void testImplementation() throws SBOLGraphException, IOException TestUtil.serialise(doc, "entity/attachment", "attachment"); System.out.println(SBOLWriter.write(doc, "Turtle")); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/CollectionTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/CollectionTest.java index 6302b61..ce96250 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/CollectionTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/CollectionTest.java @@ -34,6 +34,7 @@ public void testInterface() throws SBOLGraphException, IOException TestUtil.serialise(doc, "entity/collection", "collection"); System.out.println(SBOLWriter.write(doc, "Turtle")); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ImplementationTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ImplementationTest.java index 9b7003c..6b0cfe1 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ImplementationTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ImplementationTest.java @@ -35,6 +35,7 @@ public void testImplementation() throws SBOLGraphException, IOException TestUtil.serialise(doc, "entity/implementation", "implementation"); System.out.println(SBOLWriter.write(doc, "Turtle")); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/InterfaceTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/InterfaceTest.java index d6c29f2..ab01d54 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/InterfaceTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/InterfaceTest.java @@ -46,6 +46,7 @@ public void testInterface() throws SBOLGraphException, IOException TestUtil.serialise(doc, "entity/interface", "interface"); System.out.println(SBOLWriter.write(doc, "Turtle")); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ModelTest.java b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ModelTest.java index bd162e4..9ece439 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ModelTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/entity/test/ModelTest.java @@ -33,6 +33,7 @@ public void testInterface() throws SBOLGraphException, IOException TestUtil.serialise(doc, "entity/model", "model"); System.out.println(SBOLWriter.write(doc, "Turtle")); + TestUtil.assertReadWrite(doc); } } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/measure/test/MeasureTest.java b/libSBOLj3/src/test/java/org/sbolstandard/measure/test/MeasureTest.java index 43d13c5..d156426 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/measure/test/MeasureTest.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/measure/test/MeasureTest.java @@ -4,6 +4,7 @@ import java.io.IOException; import java.net.URI; import java.util.Arrays; +import java.util.List; import org.sbolstandard.TestUtil; import org.sbolstandard.api.SBOLAPI; @@ -78,6 +79,28 @@ public void test() throws SBOLGraphException, IOException SBOLDocument doc2=SBOLWriter.read(new File("output/measurement_entity/measurement/measurement.ttl"), "turtle"); System.out.println(SBOLWriter.write(doc2, "Turtle")); + List units=doc2.getSingularUnits(); + if (units!=null) + { + for (SingularUnit unit:units) + { + System.out.print("Name:" + unit.getName() + " "); + System.out.println("Factor:" + unit.getFactor()); + + } + } + + List prefixedUnits=doc2.getPrefixedUnits(); + if (prefixedUnits!=null) + { + for (PrefixedUnit unit:prefixedUnits) + { + System.out.print("Name:" + unit.getName() + " "); + System.out.println("Prefix:" + unit.getPrefix()); + + } + } + TestUtil.assertReadWrite(doc); } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/usecase/Multicellular.java b/libSBOLj3/src/test/java/org/sbolstandard/usecase/Multicellular.java index 21bca57..e4ecf17 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/usecase/Multicellular.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/usecase/Multicellular.java @@ -60,8 +60,7 @@ public void testApp() throws SBOLGraphException, IOException SBOLAPI.appendComponent(doc, AHLProducer,luxI); SBOLAPI.appendComponent(doc, AHLProducer,ter_luxI); SBOLAPI.addSubComponent(AHLProducer, AHL); - SBOLAPI.createInteraction(Arrays.asList(InteractionType.GeneticProduction),AHLProducer, luxI, Arrays.asList(ParticipationRole.Template), AHL, Arrays.asList(ParticipationRole.Product)); - + SBOLAPI.createInteraction(Arrays.asList(InteractionType.GeneticProduction),AHLProducer, luxI, Arrays.asList(ParticipationRole.Template), AHL, Arrays.asList(ParticipationRole.Product)); //AHL Receiver Component AHLReceiver=SBOLAPI.createDnaComponent(doc, "AHL_receiver", "AHL receiver", Role.EngineeredGene, null); @@ -77,8 +76,6 @@ public void testApp() throws SBOLGraphException, IOException Component GFP=SBOLAPI.createComponent(doc, SBOLAPI.append(baseUri, "GFP_protein"), ComponentType.Protein.getUrl(), "GFP", "GFP", "GFP", null); Component LuxR_AHL=SBOLAPI.createComponent(doc, SBOLAPI.append(baseUri, "LuxR_AHL"), ComponentType.Protein.getUrl(), "LuxR_AHL", "LuxR_AHL", "LuxR_AHL complex", Role.TF); - - SBOLAPI.appendComponent(doc, AHLReceiver,pConstLuxR); SBOLAPI.appendComponent(doc, AHLReceiver,rbs_luxR); SBOLAPI.appendComponent(doc, AHLReceiver,luxR); @@ -121,8 +118,11 @@ public void testApp() throws SBOLGraphException, IOException output=SBOLWriter.write(doc2, "RDF/XML-ABBREV"); System.out.print(output); - TestUtil.serialise(doc2, "multicellular", "multicellular"); + TestUtil.serialise(doc2, "multicellular", "multicellular"); + + TestUtil.assertReadWrite(doc); System.out.println("done"); + } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/usecase/MulticellularSimple.java b/libSBOLj3/src/test/java/org/sbolstandard/usecase/MulticellularSimple.java index 6653a7d..947ce04 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/usecase/MulticellularSimple.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/usecase/MulticellularSimple.java @@ -55,6 +55,7 @@ public void testApp() throws SBOLGraphException, IOException TestUtil.serialise(doc2, "multicellular_simple", "multicellular_simple"); System.out.println("done"); + TestUtil.assertReadWrite(doc); } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/usecase/PoPSReceiverExample.java b/libSBOLj3/src/test/java/org/sbolstandard/usecase/PoPSReceiverExample.java index 132dfd1..a40bd5e 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/usecase/PoPSReceiverExample.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/usecase/PoPSReceiverExample.java @@ -62,7 +62,7 @@ public void testApp() throws SBOLGraphException, IOException TestUtil.serialise(doc2, "BBa_F2620_PoPSReceiver", "BBa_F2620_PoPSReceiver"); - + TestUtil.assertReadWrite(doc); System.out.println("done"); } diff --git a/libSBOLj3/src/test/java/org/sbolstandard/usecase/ToggleSwitch.java b/libSBOLj3/src/test/java/org/sbolstandard/usecase/ToggleSwitch.java index 5d43e0a..35bc9a8 100644 --- a/libSBOLj3/src/test/java/org/sbolstandard/usecase/ToggleSwitch.java +++ b/libSBOLj3/src/test/java/org/sbolstandard/usecase/ToggleSwitch.java @@ -133,6 +133,7 @@ public void testApp() throws SBOLGraphException, IOException System.out.print(output); TestUtil.serialise(doc2, "toggle_switch", "toggle_switch"); + TestUtil.assertReadWrite(doc); System.out.println("done"); }