Security News
PyPI’s New Archival Feature Closes a Major Security Gap
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
io.github.galbiston:rdf-tables
Advanced tools
Conversion of delimited value/tabular files into RDF serialisation.
This application and library converts delimited value/tabular files, e.g. CSV or TSV, into a variety of RDF serialisation. Configuration is done by modifying the header of the file to provide Class, Property and Datatype information. It is intended to be as brief to implement and unintrusive as possible.
Features:
Header items are delimited by the reserved "|" (pipe) character. Column 0 header is treated differently, see below. Each header column can have one to three items in the order:
The first column contains the base URI and the Class of the column. The base URI is used as the default prefix for Objects, Properties, Classes and Datatypes that are not URIs and do not have a prefix.
The first column MUST be an Object. The remainder of the data can be Objects (forming ObjectProperty relationships) or Literals (forming DatatypeProperty relationships). Gaps for columns are ignored with no warnings. Multiple columns with the same or similar items do not cause any issues.
Objects:
Objects will be created by default with rdfs:label using the local name portion of the URI, but can be switched off globally. It can also be switched on globablly for all Objects to be created as a members of the class owl:NamedIndividual, but switched off by default.
Literals:
RDFTables can be accessed as a library using Maven etc. from Maven Central or on the command line.
<dependency>
<groupId>io.github.galbiston</groupId>
<artifactId>rdf-tables</artifactId>
<version>1.0.2</version>
</dependency>
File and Folder conversion methods are contained in the FileReader
class.
Arguments follow the same conventions as the command line arguments below.
--input, -i
The source for the conversion process.
--output, -o
The destination for the conversion process. Specifying a folder will re-use the file/s name. Combining an input folder with an output file will consolidate the output into a single file.
--delim, -l
The column delimiter/separator in the input file. Defaults to comma but any character string can be used except for reserved characters ":", "^" and "|". Keywords TAB, SPACE and COMMA are also supported.
--format, -f
The file serialistion used for the RDF output.
--prefixes, -p
A file of key=value pairs with no header (Java Properties format). Key is the prefix label and value is the URI for the prefix. Defaults to searching the input folder and current directory for "prefixes.prop".
Pre-loaded prefixes:
--datatypes, -d
A file of key=value pairs with no header (Java Properties format). Key is the datatype label and value is the URI for the datatype. Defaults to searching the input folder and current directory for "datatypes.prop".
Pre-loaded XSD datatypes:
--named, -n
Boolean value for creating OWL NamedIndividuals in the data. Default: true
--exclude, -x
Excluded files not to be used as input from a folder.
Supply the above parameters as a file:
$ java Main @/tmp/parameters
Library methods are provided for compiling to TDB graphstore by named graph, see TDBBuilder.compileFolder()
.
Items that can be developed based on feedback and other suggestions.
FAQs
Unknown package
We found that io.github.galbiston:rdf-tables demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
Research
Security News
Malicious npm package postcss-optimizer delivers BeaverTail malware, targeting developer systems; similarities to past campaigns suggest a North Korean connection.
Security News
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.