3-round-stones / callimachus Goto Github PK
View Code? Open in Web Editor NEWCallimachus is a highly scalable platform for creating and running data-driven websites
License: Other
Callimachus is a highly scalable platform for creating and running data-driven websites
License: Other
Alter webapps/pages/sample-create.xhtml to include a hidden input field that stores the date a resource was created in Callimachus. Use JS .Date() to populate the field. The RDF property for the input should be dcterms:created.
In the case that a resource already stores it's own metadata (PDFs) we should default to that rather than overwriting.
When sending a query to callimachus' sparql endpoint that defines common prefixes such as RDFS, callimachus returns an error
org.openrdf.query.MalformedQueryException: Multiple prefix declarations for prefix 'rdfs'
It would be better to assume that the redefined predicate overrides the default, since (1) it is hard to know which prefixes are already defined (it seems for example that FOAF is not) and (2) eventually a user may want to redefine it un purpose.
Callimachus can import CAR files. Adding support to serve ZIP, JAR, and CAR files as-is will provide the ability to upload compact JAR and other binary artifacts.
With some data where an rdfs:label is not always available a table of rows with 2 cells: one for the optional label and the other for the URI.
<table>
<tr rel="rdfs:isDefinedBy" resource="?link">
<td>{rdfs:label} </td>
<td><a class="diverted" href="?link">{?link}</a></td>
</tr>
</table>
The first cell does not get rendered at all if the label does not exist. Even putting the nbsp ( ) in the cell does not help
<td><span property="rdfs:label"/> </td>
<td><span>{rdfs:label} </span></td>
<td><span>{rdfs:label}</span> </td>
But none of them work – the is dropped whatever I do
The following markup fails if a concept in /scheme/mediums/ has no prefLabel
<div xmlns:dcterms="http://purl.org/dc/terms/">
<label for="medium">Medium</label>
<select id="medium" rel="dcterms:medium">
<option selected="selected" about="?concept" rev="calli:hasComponent" resource="/scheme/mediums/" property="skos:prefLabel" />
</select>
</div>
The produced SPARQL puts the skos:prefLabel in a nested OPTIONAL blocks. However, the prefLabel property, in this case, must be bound to produce an option element.
It would be nice that Callimachus framework would beautify XHTML when saved.
For example, after written and copy pasted a lot of XHTML to the view it would be useful to see this ungly XHTML indented nicely when saved.
Drag and drop files within Callimachus
Password confirmation on user create and edit
When using markup like the following the first relationships becomes required for the rest of the document.
<label class="input" rel="msg:realm" resource="?realm">
<input type="radio" name="realm" checked="checked" />
<span rel="rdf:type" resource="/callimachus/Manifest">Protected</span>
</label>
The produced SPARQL does not close the ?realm resource scope until the end of the query, as show here. The ?reader variable should not be nested in the ?realm block.
UNION
{
?this msg:realm ?realm .
?realm a </callimachus/Manifest> .
OPTIONAL {
}
OPTIONAL {
{
?this calli:reader ?reader .
?reader a calli:Party .
OPTIONAL {
{
?this calli:reader ?reader .
OPTIONAL {
?reader rdfs:label ?_reader_label .
}
}
}
}
UNION
Adding an optional pattern (such as rdfs:label) to the ?realm resource corrects the block nesting, but should not be required.
Similar things can happen when constructing a dynamic dropzone. Drag/upload a photo in the dropzone below will not link to the image, but if the img tag has a title="{rdfs:label}" it will work.
<form id="form" method="POST" action="" enctype="application/sparql-update" about="?this">
<div dropzone="link s:text/uri-list">
<label>Photo <a href="?create=/callimachus/Photo" onclick="return calli.createResource(this)" class="ui-icon ui-icon-newwin"/></label>
<div rel="foaf:img">
<span about="?img" typeof="foaf:Image" class="ui-state-highlight ui-corner-all">
<img src="{?img}?small" />
<a href="{?img}" onclick="return calli.removeResource(this)" class="ui-icon ui-icon-close" />
</span>
</div>
</div>
<button type="submit">Save</button>
<button type="button" onclick="location.replace('?view')">Cancel</button>
</form>
To show only related resources if a property exists should be done like this.
<tbody rel="tri:released_to" resource="?released">
<tr property="tri:amount_in_pounds" content="?amount">
<td><span>{?amount} lbs</span></td>
<td><span rel="tri:environmental_medium ">{rdfs:label}</span></td>
<td><span rel="tri:release_basis_estimate">{rdfs:label}</span></td>
</tr>
</tbody>
However, that produces the SPARQL below, when the amount_in_pounds is not matched and the nested resources are, the template engine gets messed up and can't continue. This happens because the SPARQL results are inconsistent with the template markup.
{
?this tri:released_to ?released .
OPTIONAL {
{
?released tri:amount_in_pounds ?amount .
}
UNION
{
?released tri:environmental_medium ?_released_environmental_medium .
OPTIONAL {
?_released_environmental_medium rdfs:label ?_released_environmental_medium_label .
}
}
UNION
{
?released tri:release_basis_estimate ?_released_release_basis_estimate .
OPTIONAL {
?_released_release_basis_estimate rdfs:label ?_released_release_basis_estimate_label .
}
}
}
}
The nested @rel should be in an OPTIONAL from the @Property.
When a property expression is in an attribute like value="{rdf:value}", but there is no rdf:value in the RDF store, the containing element should still be printed with an empty attribute value.
For example the markup:
<input placeholder="Street address" value="{vcard:street-address}" />
<input placeholder="Extended address" value="{vcard:extended-address}" />
<input placeholder="PO box" value="{vcard:post-office-box}" />
..would either show all three input elements or none of them (if the subject resource did not match) regardless of the property values in the RDF store.
This can be demonstrated using the directory sample app in the edit tab.
When there is an error in the XProc Pipeline an error code that looks similar to "XD0001" will be returned.
In this example it should be changed to:
"Dynamic Error (err:XD0001): A non-XML resource was produced on a step output or arrived on a step input."
per the spec (http://www.w3.org/TR/xproc/) which will make the error much more descriptive and useful to the user.
Forms with resources that link back to self may not work. This can be see when changing the permissions of a user or group to include a self reference back to this user or group.
Pete E. reported:
[[
I created a folder called “d&isf” – I was concerned about the ampersand but it let me create the folder. I was then able to create pages and named queries in that folder and link to them. But, now I have created a class in it, I can’t create any resources – it seems the & is a problem. I had to re-import the folder with the name “disf” and fix links – now it all works.
Perhaps you could add validation to folder creation to prevent this.
]]
Reported on Callimachus Enterprise 0.17. Should apply to 0.17 tree.
There is a nasty little bug in the WYMEditor:
NB: The workaround to this bug is to hit 'Enter' twice after the last list item, thus creating an empty paragraph tag below the list.
What steps will reproduce the problem?
Example this simple template:
<?xml version="1.0" encoding="UTF-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Title Here</title>
<link rel="edit-form" href="?edit" />
<link rel="describedby" href="?describe" />
<script>
var a = {anything:["what"]};
</script>
</head>
<body>
<h1>Title Here</h1>
</body>
</html>
What is the expected output? What do you see instead?
Callimachus will return the JavaScript on the page like this:
<script>
var a = ;
</script>
What version of the product are you using? On what operating system?
Callimachus 1.0,
Debian 2.6.32-5-amd64
java version "1.6.0_37"
Please provide any additional information below.
Of course, one can add spaces and var a = {anything: ["what"]}; will work.
Particularly when updating an existing folder's contents.
Give every folder a missing resource handler
This is a feature request to facilitate the traceability of transactions in distributed systems. During the Callimachus Day on February 19th, we discussed several solutions:
[10:23] <prototypo> QuentinReul, the only way I can think your request could be met would be for clients to provide a custom HTTP header to inform Callimachus that multiple requests are part of the same out-of-band transaction and for Callimachus to respect that header when it generates its provenance information.
[10:23] <prototypo> There would need to be some way for clients to group independent operations into a user-defined group of Callimachus transactions.
[10:37] <prototypo> So, either we could take my earlier approach of having a client group transactions by passing an id, or we could have Callimachus proactively return a provenance URI so clients could keep track themselves.
[10:37] <prototypo> I have a weak preference for the latter, I think.
[10:37] <QuentinReul> I prefer the former as we do not have to keep mappings, but either solution is fine
This is from Quentin R. Please email him when accepted and scheduled.
Callimachus uses the Open Source framework Bootstrap for theming. Adding support for Bootstrap 3 will provide more responsive themes with mobile support.
Support multiple targets that are selected based to request's Accept header.
What steps will reproduce the problem?
What is the expected output? What do you see instead?
Literals with different language tags should be treated as different elements. The template language should allow specification of one or more languages to display.
This feature is needed by international customers of 3RS and is also needed by users in (e.g.) Canada.
What steps will reproduce the problem?
What is the expected output? What do you see instead?
What version of the product are you using? On what operating system?
Please provide any additional information below.
What steps will reproduce the problem?
What is the expected output? What do you see instead?
-I was assuming that I could execute a new query, but "Evaluate Query" button does not work after this.
What version of the product are you using? On what operating system?
-callimachus-0.17-rc-6
-Linux 2.6.32-220.13.1.el6.x86_64 x86_64 x86_64 x86_64 GNU/Linux
Please provide any additional information below.
-My Firefox is 13.0.1 (Mozilla Firefox for Ubuntu canonical)
What steps will reproduce the problem?
What is the expected output? What do you see instead?
An existing main article location should overwrite the default location.
Resource discussions are not exported in CAR
What steps will reproduce the problem?
What is the expected output? What do you see instead?
Causes inconsistent results when navigating through and following links because two resources are identified with the same variable name
Callimachus uses embedded RDF datasources to persist state. Adding support for SQL Datasources, using JDBC, will allow for more efficient access for some data structures.
This a feature request to be able to roll-back an activity through the Callimachus API. One approach would be to pass the activity URI as a parameter and undo the changes associated with that activity.
[10:39] <QuentinReul> does the Callimachus API provides something to do this based on the activity URI?
[10:40] <prototypo> Not yet, but as you can see we are preparing for it sometime in the future.
[10:41] <QuentinReul> how could we perform roll-back in the current version?
[10:42] <prototypo> Currently, clients would need to track their own state for a rollback.
What steps will reproduce the problem?
<ul class="sorted">
<li rel="sheoTodo:visit" resource="?visit"><span property="sheoTodo:dateAdmitted" class="view asc"/> - <span property="sheoTodo:treatedAt"/></li>
</ul>
<ul class="sorted">
<li rel="sheoTodo:visit" resource="?visit"><span property="sheoTodo:dateAdmitted" class="view asc"/> - {sheoTodo:treatedAt}</li>
</ul>
What is the expected output? What do you see instead?
The syntax provided in #2 and #3 should provide identical output.
Minor update: The output of #2 and #3 should be "visually identical" not "syntactically or semantically identical".
What steps will reproduce the problem?
What is the expected output? What do you see instead?
Callimachus configuration (etc/callimachus.conf) should allow configuration of the protocol as part of the authority.
This is a feature request submitted by a user via IRC (juancoda).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.