diff --git a/README.md b/README.md index fbbe379..723e277 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,6 @@ SBOL represents data using RDF graphs, which can be serialised in different form * Turtle (File extension: ttl) * N-Triples (File extension: nt) * JSON-LD (File extension: jsonld) -* RDF/JSON (File extension: rj) ## How to use libSBOLj3 @@ -18,7 +17,7 @@ Use this option if you are developing a Java application using [Maven](https://m org.sbolstandard libSBOLj3 - 1.4-SNAPSHOT + 1.0.0-SNAPSHOT ... @@ -36,13 +35,13 @@ Use this option if you are developing a Java application using [Maven](https://m ``` ### As a Java dependency in a non-Maven project -The libSBOLj3 library is available as a JAR file. Please download the file from the [releases page](https://github.com/goksel/libSBOLj3/tags). A single JAR file (with the "withDepencencies" suffix), which includes all the required libSBOLj3 related dependencies, is also available. +The libSBOLj3 library is available as a JAR file. Please download the file from the [releases page](https://github.com/SynBioDex/libSBOLj3/tags). A single JAR file (with the "withDepencencies" suffix), which includes all the required libSBOLj3 related dependencies, is also available. ## SBOL Examples -[Several SBOL3 examples](https://github.com/goksel/libSBOLj3/tree/master/libSBOLj3/output) are available as part of the libSBOLj3 library. These examples have also been made available as part of the [SBOL Test Suite](https://github.com/SynBioDex/SBOLTestSuite/tree/master/SBOL3). Some of these examples have beeen explained in the recent SBOL3 paper, titled "[The Synthetic Biology Open Language (SBOL) Version 3: Simplified Data Exchange for Bioengineering](https://doi.org/10.3389/fbioe.2020.01009)". +[Several SBOL3 examples](https://github.com/SynBioDex/libSBOLj3/tree/master/libSBOLj3/output) are available as part of the libSBOLj3 library. These examples have also been made available as part of the [SBOL Test Suite](https://github.com/SynBioDex/SBOLTestSuite/tree/master/SBOL3). Some of these examples have beeen explained in the recent SBOL3 paper, titled "[The Synthetic Biology Open Language (SBOL) Version 3: Simplified Data Exchange for Bioengineering](https://doi.org/10.3389/fbioe.2020.01009)". ## Getting Started -Please see the [tutorial code](https://github.com/goksel/libSBOLj3/tree/feature/combine2020/libSBOLj3/output/combine2020) and the [COMBINE 2020 slides](https://github.com/SynBioDex/Community-Media/blob/master/2020/COMBINE20/pySBOL3-COMBINE-2020.pptx) for more details. The tutorial code includes additional examples to crete interactions, constraints, component references and so on. +Please see the [tutorial code](https://github.com/SynBioDex/libSBOLj3/tree/feature/combine2020/libSBOLj3/output/combine2020) and the [COMBINE 2020 slides](https://github.com/SynBioDex/Community-Media/blob/master/2020/COMBINE20/pySBOL3-COMBINE-2020.pptx) for more details. The tutorial code includes additional examples to crete interactions, constraints, component references and so on. ### Creating a new SBOL document The SBOLDocument class is used to create SBOL documents which act as containers to create and access other SBOL entities. Although not required, the base URI can be used as prefix for all new SBOL entities. diff --git a/libSBOLj3/dependency-reduced-pom.xml b/libSBOLj3/dependency-reduced-pom.xml index 1518e36..260048a 100644 --- a/libSBOLj3/dependency-reduced-pom.xml +++ b/libSBOLj3/dependency-reduced-pom.xml @@ -5,10 +5,10 @@ libSBOLj3 libSBOLj3 1.0.0-SNAPSHOT - https://github.com/goksel/libSBOLj3 + https://github.com/SynBioDex/libSBOLj3 GitHub Issues - https://github.com/goksel/libSBOLj3/issues + https://github.com/SynBioDex/libSBOLj3/issues @@ -54,6 +54,31 @@ false + + maven-source-plugin + 3.2.1 + + + attach-sources + + jar-no-fork + + + + + + maven-gpg-plugin + 3.0.1 + + + sign-artifacts + verify + + sign + + + + diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld index 1541c69..aba3ea5 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld @@ -1,8 +1,8 @@ { - "@id": "urn:uuid:2d9074d9-4a5b-48f7-a007-04e6decdad72", + "@id": "urn:uuid:fb46f02f-d1c5-4529-a971-64b63b938cdd", "sbol:name": "TetR", "sbol:hasNamespace": { - "@id": "urn:uuid:0bc0a0f6-fd79-4222-bcb6-db149c0396fe" + "@id": "urn:uuid:bbc5139e-9b65-418d-b5bf-25da4e066063" }, "sbol:type": { "@id": "SBO:0000252" diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld_expanded b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld_expanded index 2d5aca6..118deae 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld_expanded +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.jsonld_expanded @@ -1,10 +1,10 @@ [ { - "@id" : "urn:uuid:2d9074d9-4a5b-48f7-a007-04e6decdad72", + "@id" : "urn:uuid:fb46f02f-d1c5-4529-a971-64b63b938cdd", "http://sbols.org/v3#name" : [ { "@value" : "TetR" } ], "http://sbols.org/v3#hasNamespace" : [ { - "@id" : "urn:uuid:0bc0a0f6-fd79-4222-bcb6-db149c0396fe" + "@id" : "urn:uuid:bbc5139e-9b65-418d-b5bf-25da4e066063" } ], "http://sbols.org/v3#type" : [ { "@id" : "https://identifiers.org/SBO:0000252" diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.nt b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.nt index fad04f9..f3db2c5 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.nt +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.nt @@ -1,4 +1,4 @@ - "TetR" . - . - . - . + "TetR" . + . + . + . diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rdf b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rdf index fa68488..e9ec8fe 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rdf +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rdf @@ -10,9 +10,9 @@ xmlns="https://sbolstandard.org/examples/" xmlns:om="http://www.ontology-of-units-of-measure.org/resource/om-2/" xml:base="https://sbolstandard.org/examples/"> - + TetR - + diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rj b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rj index e51f58a..a7d0959 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rj +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.rj @@ -1,5 +1,5 @@ { - "urn:uuid:2d9074d9-4a5b-48f7-a007-04e6decdad72" : { + "urn:uuid:fb46f02f-d1c5-4529-a971-64b63b938cdd" : { "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" : [ { "type" : "uri" , "value" : "http://sbols.org/v3#Component" @@ -7,7 +7,7 @@ ] , "http://sbols.org/v3#hasNamespace" : [ { "type" : "uri" , - "value" : "urn:uuid:0bc0a0f6-fd79-4222-bcb6-db149c0396fe" + "value" : "urn:uuid:bbc5139e-9b65-418d-b5bf-25da4e066063" } ] , "http://sbols.org/v3#name" : [ { diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.ttl b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.ttl index 2e227f5..3832880 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.ttl +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri.ttl @@ -9,8 +9,8 @@ @prefix prov: . @prefix sbol: . - + a sbol:Component ; - sbol:hasNamespace ; + sbol:hasNamespace ; sbol:name "TetR" ; sbol:type SBO:0000252 . diff --git a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri_ordered.nt b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri_ordered.nt index 4170f5d..4c5b535 100644 --- a/libSBOLj3/output/entity/component_urn_uri/component_urn_uri_ordered.nt +++ b/libSBOLj3/output/entity/component_urn_uri/component_urn_uri_ordered.nt @@ -1,4 +1,4 @@ - . - "TetR" . - . - . + . + "TetR" . + . + . diff --git a/libSBOLj3/pom.xml b/libSBOLj3/pom.xml index e5e4730..071ddf9 100644 --- a/libSBOLj3/pom.xml +++ b/libSBOLj3/pom.xml @@ -7,10 +7,10 @@ jar 1.0.0-SNAPSHOT libSBOLj3 - https://github.com/goksel/libSBOLj3 + https://github.com/SynBioDex/libSBOLj3 GitHub Issues - https://github.com/goksel/libSBOLj3/issues + https://github.com/SynBioDex/libSBOLj3/issues @@ -63,16 +63,12 @@ hibernate-validator 8.0.0.Final - + - org.glassfish.expressly - expressly - 5.0.0 + org.glassfish.expressly + expressly + 5.0.0 org.hibernate.validator @@ -99,24 +95,11 @@ - + org.apache.maven.plugins maven-dependency-plugin @@ -148,7 +131,47 @@ + + org.apache.maven.plugins + maven-source-plugin + 3.2.1 + + + attach-sources + + jar-no-fork + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 3.0.1 + + + sign-artifacts + verify + + sign + + + + diff --git a/libSBOLj3/src/main/java/org/sbolstandard/core3/api/SBOLAPI.java b/libSBOLj3/src/main/java/org/sbolstandard/core3/api/SBOLAPI.java index b3792e4..c13d1d4 100644 --- a/libSBOLj3/src/main/java/org/sbolstandard/core3/api/SBOLAPI.java +++ b/libSBOLj3/src/main/java/org/sbolstandard/core3/api/SBOLAPI.java @@ -27,6 +27,11 @@ import org.sbolstandard.core3.vocabulary.Orientation; import org.sbolstandard.core3.vocabulary.RestrictionType; +/** + * + * @author gokselmisirli + * + */ public class SBOLAPI { public static List createInteraction(List interactionTypes, Component parent, Component participant1, List participant1Roles, Component participant2, List participant2Roles) throws SBOLGraphException @@ -45,47 +50,6 @@ public static List createInteraction(List interactionTypes, Co return interactions; } - /*public static List createInteraction(List interactionTypes, Component parent, SubComponent participantContainer, Component participant1, List participant1Roles, Component participant2, List participant2Roles) throws SBOLGraphException - { - List interactions=new ArrayList(); - List features1=createComponentReference(parent, participantContainer, child) - createSubComponents(parent, participant1); - List features2=createSubComponents(parent, participant2); - if (features1!=null && features2!=null) - { - for (Feature feature1: features1) - { - for (Feature feature2: features2) - { - Interaction interaction=createInteraction(interactionTypes, parent, feature1, participant1Roles, feature2, participant2Roles); - interactions.add(interaction); - } - } - } - return interactions; - } - */ - - /* public static List createNonCovalentBindingInteraction(Component container, List reactants, List products) - { - List reactantSubComponents=new ArrayList(); - if (reactants!=null) - { - for (Component component:reactants) - { - - } - } - String localName=createLocalName(DataModel.Interaction.uri, container.getInteractions()); - Interaction interaction= container.createInteraction(append(container.getUri(), localName), Arrays.asList(InteractionType.NonCovalentBinding)); - - createParticipation(interaction, participant1Roles, participant1); - createParticipation(interaction, participant2Roles, participant2); - return interaction; - - }*/ - - private static List createSubComponents (Component parent, Component child) throws SBOLGraphException { List subComponents=getSubComponents(parent, child);