コミットグラフ

38 コミット

作成者 SHA1 メッセージ 日付
Cory Slep 9df52c8c45 Prepare comments to be auto-truncated at write time.
This changes comments to only be strings passed around between the
codegen package and its clients. This lets codegen in the future limit
how long a comment line is when generating the code.
2019-01-07 22:06:32 +01:00
Cory Slep ea8af5c968 Prep for IRIs, no more circular deps, added getters/setters.
A lot of stuff just happened for the better.
2019-01-06 19:44:24 +01:00
Cory Slep 7eb1755c96 Add support for link relation values. 2019-01-06 12:41:47 +01:00
Cory Slep 1bdb66aa98 Add support for MIME media type. 2019-01-06 12:36:11 +01:00
Cory Slep 26988b6cd2 Add BCP47 to known values 2019-01-06 12:27:18 +01:00
Cory Slep 8b8cc2af27 Fix value qualified statements in interfaces.
Also fix the qualified interface name for non-functional properties in
the LessThan method.
2019-01-05 23:12:42 +01:00
Cory Slep ec7091be51 Add serialization and comparison for rdf:langString 2019-01-05 21:54:00 +01:00
Cory Slep 6b3d676552 Add serialization and comparison for xsd:duration 2019-01-05 18:13:15 +01:00
Cory Slep 6ece169417 Add serialization and comparison for xsd:nonNegativeInteger 2019-01-05 17:17:12 +01:00
Cory Slep 7a99c1587e Add serialization and comparison for xsd:boolean 2019-01-05 17:11:24 +01:00
Cory Slep 3a49fff6bb Add serialization and comparison for xsd:string 2019-01-05 17:02:03 +01:00
Cory Slep 79e3cee633 Add serialization and comparison for xsd:float 2019-01-05 16:58:56 +01:00
Cory Slep 8b8232f1ed Add serialization and comparison for xsd:anyURI 2019-01-05 16:52:47 +01:00
Cory Slep 338fe8d347 Add serialization and comparison for xsd:dateTime. 2019-01-05 16:43:49 +01:00
Cory Slep 4f47e7fdfa Clean up Manager generation.
- Organize manager function generation into one helper method
- Vocabulary name is passed into the type & property generators
- Use interface only in the manager
- Remove unused flags in the main program
2019-01-05 16:22:37 +01:00
Cory Slep 54f8549b10 Add generation of referenced values.
Fix the package qualified naming for value types and also correctly
reference the net/url package in the owl ontology.
2019-01-05 00:00:51 +01:00
Cory Slep ce699464bf Overhaul package management, add manager.
The manager class will be responsible for allowing the generated code to
be compilable while also permitting types and properties to be isolated,
such that binaries can be pruned to smaller sizes and not require the
entire gambit be built into the resulting executable.

This state will successfully generate code, but the generated code is
completely uncompilable. It will also trash the props/ directory.
2018-12-30 16:09:14 +01:00
Cory Slep 222074b503 Put properties on the vocabulary types. 2018-12-17 21:43:33 +01:00
Cory Slep 73f7e3cf36 Experimental codegen works end to end.
Still plenty of missing features, and missing implementations in the
generated code. Also missing some functionality and flags for generating
references and/or well-known references (ex: XML, RDF values).
2018-12-09 21:23:32 +01:00
Cory Slep 069b8de820 Add initial convert (exp is broken at this commit)
Still need to flesh out the types for conversion. Also still need to add
the serialize and deserialize calls for individual types. Finally, will
need to put the finishing touches on writing the output files in the
desired directories. Then the experimental tool will be ready for end to
end testing.
2018-12-08 23:05:02 +01:00
Cory Slep dc2ce18fd7 Finish adding values and nat lang maps. 2018-12-08 18:57:40 +01:00
Cory Slep 139dc3c5ea Hack for "without property", begin resolving references.
Also begin populating values in the intermediate definition.

TODO: Replace the hack in the spec definition with something applicable
RDF-wise (is there anything that permits this RDF wise?).
2018-12-08 17:50:26 +01:00
Cory Slep d2182dc3b9 Tool can now print its intermediate state 2018-12-05 23:50:20 +01:00
Cory Slep e5693c2eb9 Finish implementing ontologies.
- ActivityStreams specification can now be entirely parsed.
- Removed print statements
- Added missing ontology items to rdfs
2018-12-05 23:36:27 +01:00
Cory Slep 0f98307f07 Bug fixes and ontology improvements.
- Fixed the way indexing nodes were being applied
- Implemented property types in ontologies
- Improved class types in ontologies
- Lots of other stuff
2018-12-05 22:53:26 +01:00
Cory Slep 864616542c Prepare for @type to contextually resolve.
- Remove unused 'as' ontology
- Outline new GetByName for ontologies
- Fix bugs
- Prepare the type to use the RDFRegistry
2018-12-02 23:48:54 +01:00
Cory Slep 0530121039 Progress on implementing the schema ontology.
- can process name
- can process url
- properties can have examples
- id no longer requires a thing to be set on (may need to be revisited)
2018-12-02 22:37:43 +01:00
Cory Slep e508425ddb Remove leftover print call 2018-12-02 22:36:43 +01:00
Cory Slep 676dc64dbb Allow a node to hijack the rest of the recursive descent.
Also, fixed a bug where errors were not getting propagated properly from
RDFNodes back to the apply process.
2018-12-02 22:35:46 +01:00
Cory Slep 30f9f6a16b Fix aliasing specific elements.
Also adds some placeholders for the schema ontology.

Eliminated some dead code in the RDF manager thing.

Next step is to get mainEntity parsing to ignore the rest of the values,
which should be easier to do, maybe.
2018-12-02 20:04:56 +01:00
Cory Slep 90b12d43aa Fix bugs for handling aliased nodes and containers
Implemented the beginning of the container and index handling, but have
not yet completed it.
2018-12-02 13:55:29 +01:00
Cory Slep b657bd2307 Add some OWL ontology implementations 2018-12-01 18:31:35 +01:00
Cory Slep c61bd2d129 Add rdf ontology nodes, make processing mandatory. 2018-12-01 16:36:33 +01:00
Cory Slep 94569ca549 Setup applying RDF node understanding.
Next, the actual nodes need to be created in order to construct the
proper intermediate form and translate the parsed data into a meaningful
structure that can be used to generate code.

Ideally, this could also potentially allow code generation in other
languages too. And different ways to read in ActivityStreams
specifications and extensions. But that would be way off in the future.
2018-11-29 22:53:48 +01:00
Cory Slep 68f6602ebb Fix fork imports and rearrange parsing functions 2018-11-29 01:22:56 +01:00
Cory Slep 0470f8e603 Add internal parsed RDF definition data types.
This is an evolution of the old tools/defs/types.go file which
essentially had these data structs manually defined in a static go file.
Now, the parser should be able to construct this data structure on the
fly from input files and reference files.
2018-11-28 23:50:07 +01:00
Cory Slep 8b4f9fc81c Prepare tool for ingesting JSON LD context defs. 2018-11-28 21:40:11 +01:00
Cory Slep 8795587007 Experimental: Add RDF package for JSONLD context definitions.
This package will be the frontend for reading the JSONLD context
descriptions that specify ActivityStreams vocabularies. This will allow
ingesting publicly hosted or manually-created vocabularies and
generating an internal representation for later code generation.
2018-11-17 16:33:42 +01:00