Skip to content

🧜‍♀️🌊 An RDF library for JavaScript.

License

Notifications You must be signed in to change notification settings

marrus-sh/mermaid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mermaid

mermaid is an RDF and Linked Data library, written and maintained by Kyebego as a personal project. It builds on the spirit of specifications like RDF Interfaces (W3C Working Group Note, never finished) and Interface Specification: RDF Representation (Draft Community Group Report, not an actual W3C specification), only updated for RDF 1.1 and the latest in web technologies.

Designed for use in client‐side and unhosted applications and publishing tools. Not designed for server‐side operations, for which a more rigourous RDF library should be used if maintaining compleat correctness is important.

Features

  • Written in CoffeeScript 2
  • Literate source
  • Compiles to ECMAScript 5.1
  • Extensible
  • Programmed with gay sensibilities
  • GPLv3 License

Limitations

For simplicity, mermaid lacks a true XSD engine, which means that some things, like xsd:float, might suffer from minor rounding errors or approximations. If you're a server and need a complete assurance that the data you are dealing with is valid and interpreted according to its XSD datatype, this library is probably not for you.

The full value of xsd:long and xsd:unsignedLong cannot fit in a JavaScript number without rounding and mermaid makes no attempt to get around this.

mermaid does not support the XSD datatypes which are listed in RDF 1.1 Concepts and Abstract Syntax as “unsuitable for various reasons”. These are: xsd:QName, xsd:ENTITY, xsd:ID, xsd:IDREF, xsd:NOTATION, xsd:IDREFS, xsd:ENTITIES, and xsd:NMTOKENS.

Finally, mermaid does not support xsd:duration or the values derived from it, as JavaScript has no native means of expressing durations.

Standards

HowTo

If you really want to understand how to use mermaid, you should read the source (but like, the English parts, not the code). The documents are organized by specification, so if you know what you're looking for, things hopefully won't be too hard to find.

I'll try to put together a Tutorial that is a little more beginner‐friendly to approach once I'm satisfied with the state of the code and have spare time.

SeeAlso

If mermaids kissing beneath the ocean waves makes you feel uncomfortable, maybe check out RDF Interfaces Extension instead.

Contributing

It's open source so that you can modify the code before you run it on your own computer, not so that you can modify the code before I run it on mine ^.^

Feel free to fork if you think it needs something, tho (-_^)〜☆

Releases

No releases published

Sponsor this project

Packages

No packages published