Dear Hsan, Sorry for not having replied earlier.
Keeping the name of the maven artifacts as it is (api) is fine. I’m trying to think of a one-word name for what is currently “api.impl”. The package contains abstract implementations, taking care of the implementation of “equals” (which means graph-isomorphism for the immutable graphs), some other utility classes that can be of used implementing the API as well as an in-memory implementation. What about an artifact “api-impl” with two package “mem” (for the in-memory implementations) and “abstract” (for the abstract classes and the rest)? I wasn’t aware of the consequences of CLEREZZA-1038. That one can no longer use GraphNodes (which to seems like a very fundamental feature of Clerezza) without depending on Scala seems like a massive drawback to me. The Scala features are nice but I think they should come at a price to those who don’t need them. Cheers, Reto From: Hasan <[email protected]> Sent: Monday, May 13, 2019 9:55 PM To: [email protected] Subject: Re: [DISCUSS] Release the reunited branch as the master branch version 8 Dear Reto, all I'd like to continue the discussion regarding naming and structure You proposed to remove the .api package and have the types directly in a.o.clerezza We need to have the types in a module. Currently, the module is called api. Shall we also rename the module? For example model or clerezza ? In that case we will have e.g., model/src/main/java/org/apache/clerezza/BlankNode.java and the class is called org.apache.clerezza.BlankNode Or shall we keep the name api for the module, but only have the package renamed from o.a.clerezza.api to o.a.clerezza? Furthermore, the folder api.impl becomes model.impl and api.utils becomes utils What do you think? Cheers Hasan On Sat, Mar 9, 2019 at 5:36 PM Reto Gmür <[email protected]<mailto:[email protected]>> wrote: Hi Hasan, all, I've just created a branch of the jena.* modules on https://github.com/clerezza and of https://github.com/linked-solutions/slds. The refactoring brings some good improvements so I'd like to see this released as soon as possible. In my opinion discussing the following points should nor block the release, but maybe we find a consensus easily so that we could incorporate this in the release - Do we need the .api package? Couldn't these types be directly in o.a.clerezza? After all Clerezza is mainly an API - I don't like the name .api.impl - Without the ".api" it would be a bit better, still ".impl" is just very unspecific. - It's great the the method in GraphWriter to set the Serializer is now public. Now I can have the code: GraphWriter graphWriter = new GraphWriter(); graphWriter.setSerializer(Serializer.getInstance()); Before I needed to make a subclass to access the protected methods. However it seems that graphWriter could access the default serializer using .getInstance itself, if none is set. Cheers, Reto -----Original Message----- From: Reto Gmür <[email protected]<mailto:[email protected]>> Sent: Thursday, March 7, 2019 2:36 PM To: [email protected]<mailto:[email protected]> Subject: RE: [DISCUSS] Release the reunited branch as the master branch version 8 Hi Hasan Thanks a lot for the overview. While I think it shouldn't be a general requirement to release everything together, in this case it looks like it would make things easier to use version 2.0.0 in all modules. WDYT? Cheers, Reto -----Original Message----- From: Hasan <[email protected]<mailto:[email protected]>> Sent: Wednesday, March 6, 2019 9:54 PM To: [email protected]<mailto:[email protected]> Subject: Re: [DISCUSS] Release the reunited branch as the master branch version 8 Dear all I had a discussion with Reto regarding the versioning of the modules. Currently, all modules have version 8 after the refactoring. Reto suggested to keep previous version and increase it according to semantic versioning. So, since all modules have a breaking change, I will increase the major number. However, some modules are new or the result of a renaming. We have these modules in the reunited branch: * api (was org.apache.clerezza.commons-rdf:commons-rdf-api 0.3-SNAPSHOT) * api.impl (was org.apache.clerezza.commons-rdf:commons-rdf-impl-utils 0.3-SNAPSHOT) * ontologies (was org.apache.clerezza:rdf.ontologies 1.0.1-SNAPSHOT) * sparql (was sparql package in org.apache.clerezza:rdf.core 1.0.2-SNAPSHOT) * representation (was serializedform package in org.apache.clerezza:rdf.core 1.0.2-SNAPSHOT) * test.utils (was org.apache.clerezza:rdf.core.test 1.0.1-SNAPSHOT) * dataset (was access package in org.apache.clerezza:rdf.core 1.0.2-SNAPSHOT) * api.utils (is a merge of org.apache.clerezza:rdf.utils 1.0.1-SNAPSHOT with org.apache.clerezza:rdf.scala.utils 1.0.1-SNAPSHOT) * jaxrs.rdf.providers (was org.apache.clerezza:jaxrs.rdf.providers 1.0.1-SNAPSHOT) api will have version 1.0.0 api.impl will have version 1.0.0 ontologies will have version 2.0.0 sparql will have version 2.0.0 representation will have version 2.0.0 test.utils will have version 2.0.0 dataset will have version 2.0.0 api.utils will have version 2.0.0 jaxrs.rdf.providers will have version 2.0.0 What do you think? Any objections? Kind regards Hasan On Sat, Feb 16, 2019 at 11:12 AM Hasan <[email protected]<mailto:[email protected]>> wrote: > Dear all > > The reunited branch of Clerezza ( > https://gitbox.apache.org/repos/asf/clerezza.git) brings back the > Clerezza common-rdf ( > https://gitbox.apache.org/repos/asf/clerezza-rdf-core.git) > into Clerezza (https://gitbox.apache.org/repos/asf/clerezza.git). > > At the same time we refactor Clerezza to > - remove a cyclic dependency between sparql and access package, > - have all core functionalities in the top level modules instead of > under a single rdf module, > - rename some modules and packages to reflect better their functionality. > > The refactoring task is more or less complete. > > I think we should release the reunited branch in the near future as > version 8 of master. > > What do you think? > > Kind regards > Hasan > >
