[Application-profiles-ig] Issues relating to transform program(s)

Karen Coyle kcoyle at kcoyle.net
Thu May 27 20:58:44 BST 2021


我划分的类型我塞的问题ive relating to creating a quick transform of the TAP to another format. This is, as we said in the meeting, merely a proof of concept so we do not expect it to be anything close to perfect. Of the issues, though, I think that the question of outputs (transform 6[1]) is both the thorniest but also the one that 1) should guide the work most specifically and 2) produces what we want to show to others. So I suggest that we start there, and then I think that the other decisions will be easy to deal with. If there is anything here we can skip for now, say so. We haven't a whole lot of time. I did make some links to Tom's "read the docs" because it has examples. Here's a text of the 6 issues, as it may make more sense when they are seen together. Also, I have made test records already for some of these cases, and I will add those links into the github issue. I will work on test records for the rest, and for whatever we come up with. Transform1: CSV validationhttps://github.com/dcmi/dctap/issues/28* Check that CSV is valid (e.g. each row same number of values, etc.) (This probably will be done by the built-in module that reads csv.) * message(s): errors here may result in program stopping with message. Message should be output to user Transform2: Basic TAP validationhttps://github.com/dcmi/dctap/issues/29* Does this have a header row? * Are the column headers from the TAP vocabulary? (case insensitive?) * message: report any that are not TAP, but continue Transform3: TAP shape/statement structurehttps://github.com/dcmi/dctap/issues/30* If no shapeID, ok, but must have at least one propertyID * For each shape, shape must have at least one propertyID * A shape must be on contiguous rows - same shapeID cannot be used with intervening shapeIDs * error message - continue? or drop shapes that are repeated erroneously, with their properties? or end? * ?? Transform4: TAP contentshttps://github.com/dcmi/dctap/issues/31(This should be just the minimum for this version. It could also be skipped if we run out of time, so ideally outputs should be completed before this is done.) * valueNodeType = IRI, literal, or BNODE (case insensitive?) * report as unknown value but output value * perhaps do not check Boolean values because we haven't yet provided a way to give alternates. Folks will know what values they used * check that shapeID and valueShape values match * report as error but output * ?? Transform5: outputs: message file(s)https://github.com/dcmi/dctap/issues/32This seems obvious but there may be options to discuss Transform6: outputs: profile datahttps://github.com/dcmi/dctap/issues/33* Output format(s)? * JSON * YAML * ?? * Output structure(s)? * structured, with shape and statements. [Tom's example](https://csv2shex.readthedocs.io/en/latest/basics/shape_variant.html) ` ShapeA` ` statement1` ` statement2 ` ` ShapeB` ` statement3` ` etc.` * unstructured, same as rows (as output from [csv-to-json](https://onlinejsontools.com/convert-csv-to-json)), i.e. ` ShapeA` `statement1` `ShapeA` `statement2` * TAPs with no shapes * output just the statements? * use an empty shape structure? (as per [Tom's example](https://csv2shex.readthedocs.io/en/latest/basics/propid.html)) kc [1]https://github.com/dcmi/dctap/issues/33-- Karen Coylekcoyle at kcoyle.nethttp://kcoyle.net


More information about the Application-profiles-ig mailing list