Giter Club home page Giter Club logo

yarrrml-spec's Introduction

YARRRML specification

The specification of YARRRML, a human readable text-based representation for declarative generation rules.

This is a fork of the spec currently published at https://rml.io/yarrrml/spec/, to keep in line with the latest updates of the KG-construct CG. The spec published at https://rml.io/yarrrml/spec/ remains the canonical version for the time being.

Quickstart

  • edit dev.html
  • Make sure all your local assets are in the resources folder, and the links in your dev.html file are relative (important because the publishing script creates multiple nested paths)
  • save as snapshot to index.html using the respec functionality
  • run npm install to install package dependencies
  • run node publish.js index.html to get the index.html + archived version in the dist folder
  • copy the folder ./resources into your dist folder.

The dist folder contents should mimic the contents on https://w3id.org/yarrrml/spec

yarrrml-spec's People

Contributors

bjdmeest avatar ghsnd avatar pheyvaer avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

yarrrml-spec's Issues

Array brackets as shortcuts conflicts with YAML

During the VAIA course we received the following feedback:

it's a well-known shorthand in standard YAML... the use of square brackets here for YARRML conflicts that YAML shorthand

Array brackets conflict with standard YAML as it is a shorthand for arrays.
Just putting it here so we can incorporate this later.

Add option to use `graph` as keyword instead of `graphs`

For the yarrrml spec, it might be okay to use graph instead of graphs as a keyword, more info about this discussion at oeg-upm/yatter#78

E.g. the following should be correct, following the spec (currently the spec only mentions graphs)

mappings:
  test:
    graph: https://example.com/$(id)
    s: https://example.com/$(id)
    po:
      - [a, ext:Test]

Fix inconsistent examples

The examples through out the spec need to be made consistent:

  • Usage of spaces: XXX ;/XXX . vs XXX;/XXX.
  • Placing of a YY:XXXX class types in Turtle examples. Sometimes they are on the same line, sometimes a new line

Provide RML-FNML translation for conditions

The current spec provides for each example a translation from YARRRML to the corresponding mapping in RML.
The conditions is the only section where this translation is not provided.

I've used Matey to see an example of the output but considering we have a new RML-FNML specification it would be great to know if it covers the requirements for the conditions (as I saw in Matey's output, I think currently it's purely supported by FNML) or we would also need to update the core spec to explicitly add the conditions.

Change the FNML profile

Change the FNML profile and RML-FNML translations to be compliant with the spec of the CG

Minimum nuimber of references in a template should be 1?

According to R2RML, in a string template "There SHOULD be at least one pair of unescaped curly braces.", i.e. at least one reference.

However, the YARRRML spec says "A template contains 0 or more constant strings and 0 or more references to data in a data". IMO the second 0 should be a 1, to be compliant w.r.t. R2RML.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.