Comments (11)
I guess it's your call since this lib exists on the okfn
org, but I do intend to support as much of the JTS spec in typecast
as appears reasonable. But if JTS is a rolling spec where the scope is defined by okfn's vendor libraries, you obviously win....
To be honest, the exact purpose and development path of jtskit
have really confused me, which is why I didn't want to base any software on it. It seems to me to be a mix of JTS reference functions and half an implementation of messytables
. I've also found that it doesn't work under Python 2, crashing with ASCII errors upon infer
.
from tableschema-sql-py.
@pudo can you open an issue for any bugs you have found with jtskit (or have you done so already)? They should definitely get fixed.
from tableschema-sql-py.
Yep, frictionlessdata/tableschema-py#19
from tableschema-sql-py.
@pudo I know you have a penchant for rolling your own, but, why not help us get JTSKit
in better shape rather than starting a new one?
I don't see the relationship to messytables - IMHO messytables is a real kitchen sink library that does lots of different things, and this is one of the reasons why a standalone json table schema lib exists - explicitly not to be tied to the rest of messytables.
from tableschema-sql-py.
Some clarification: I need typecast
for jsonmapping, which does not use JTS (instead JSON Schema), and I'm hoping that it will be adopted by messytables so that the lib becomes less of a kitchen sink.
I really think that type casting is a piece of functionality that makes sense as a package, since it requires a good bit of complexity to get right (the code in typecast, which comes from messytables, has matured for four years now and there's still plenty to do).
There are other steps that should be taken to make messytables better, but let's discuss those in the other issue tracker. Still, given that messytables
is a mature library which is adopted across OKFN's and other products, I would propose we don't give up on it easily and instead make it rock in the context of the JTS suite of tools!
from tableschema-sql-py.
Sure, as you suggested here, we can probably depend on typecast
for parts of the JTS typecasting in JTSKit
. But, because we'll always be following the JTS spec, and particularly the interplay between type
+ format
there, then there remains a clear and strong usecase for "JTS-specific typecasting", in a way that probably should not be in messytables
anyway, as far as I see. For the moment, what is called "JTS" in messytables
barely reflects the current JTS spec.
from tableschema-sql-py.
Also @pudo if you have issues with the JTSKit
API, please do open issues for them: bugs and design issues alike. Thanks.
from tableschema-sql-py.
@pwalsh + @pudo one possibility is that messytables "v2" fully supports JTS. In that case messytables v2 would be "JTS infer" and we could depend on that.
Also for this current library (jts-sql) I think we could assume that typecasting has happened - we have the JTS already (?). In that case all we need is to use JTS + CSV to load into SQL. The question of how the JTS is generated can come from any of several JTS inference libraries (and we can work out asap which one to focus on). PS: I think i will try and create a diagram showing the various library parts and post in https://discuss.okfn.org/c/open-knowledge-labs/data-packages
from tableschema-sql-py.
+1 on messytables v2
from tableschema-sql-py.
OK, here's the diagram and post: https://discuss.okfn.org/t/data-package-libraries-overview/957 - next thing to add is a list of the various implementations and how they fit together.
from tableschema-sql-py.
Closing in favour of #7
Also see #3 (comment)
from tableschema-sql-py.
Related Issues (20)
- Update to jsontableschema-v0.7 HOT 1
- Fix readme on PyPi
- Data synchronisation? HOT 5
- Rebase on sqlalchemy.dialects.postgresql
- Fix readme on PyPi HOT 1
- Expose package version
- Resources have no "name"s HOT 1
- Support all Table Schema types
- "Runnable" data packages HOT 4
- Should support database engines other then postgresql HOT 1
- Should be able to save tables to MySQL HOT 2
- Mismatch in primary key types should not cause a failure on SQL writing HOT 2
- Postgres dialect incorrectly maps `array` types as text instead of JSONB
- Express mapping in an external JSON to reuse as standard reference HOT 1
- Package tableschema-sql for distribution via conda-forge HOT 5
- PostgreSQL requires a unique constraint for FK reference
- Pattern check uses 'like' which is not RE compatible
- Timezone offset ignored when loading into sqlite HOT 5
- Maintainer / Lead HOT 8
- Is the package still maintained?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tableschema-sql-py.