Welcome to the Analytical Information Markup Language (AnIML).
This repository is the home of the AnIML Core Schema and the AnIML Technique Schema.
AnIML XML schemas
Welcome to the Analytical Information Markup Language (AnIML).
This repository is the home of the AnIML Core Schema and the AnIML Technique Schema.
Currently a series can have AllTypeNameList
(parameters as well) and while it is most often suitable to specify the type it is sometimes not generic enough, e.g. one can have a table of key/value pairs and each value might be a different type.
The XML can easily express this using a mixture of <S>
, <I>,
... in a table or parameter but there is now way to express this in the technique definition.
I therefore like to suggest to specify an "Any" Type that can be used for whatever type is desired, this is similar to "numeric" where it allows any integer or floating point value (even though the spec is not clear for tables if a mixed value mode is acceptable).
Currently AnIML specify three kind of series types
Lines 606 to 608 in 96d00c6
beside the AutoIncrementedValueSet
they are all quite exhaustive in the result in terms of storage space and quite limited, e.g. the EncodedValueSet
requires a specific encoding (while it is not completely specified how data is encoded), and IndividualValueSet
always requires additional tags, also the XSD can not be used to effectively constrain the used values to the correct data type.
Because of this I'd like to propose two new types of value sets:
NumbericValueSet
what is of type xsd:list
holding xsd:numeric
types, this is much more space efficient (e.g. only a plain list of space delimited numbers) but still can hold different datatypes, so for a series of INT
one might simply specify that all values have to be interpreted as such instead of wrapping the actual value.BlobValueSet
what has an attribute encoding
that specifies the data stored in it what might be a common type specified in the AnIML specification (e.g. gzip, RLE, delta-compressed-double, ...) or even custom types, which can hold either an element <data>
(with base64 encoded data) or <reference>
(that holds a reference e.g. to a file next to the animl, database id or similar) to offload the real data bytes and allows the xs:any
content type so it can be enhanced with any required custom data.I think the file extension as discussed in #4 (comment) should be specified as thirdparty tools use the generic *.xml
ending which will cause problems. See https://sciencesolutions.wiley.com/wp-content/uploads/2021/08/210421-Wiley_KnowItAll_Software_File_Format_Datasheet.pdf
https://www.animl.org currently only times out but do not deliver any content.
If hosting an own website is currently not desired, it would be good if it redirects to
https://github.com/AnIML
and an organization readme is created so users can contribute data there more easily:
https://docs.github.com/en/organizations/collaborating-with-groups-in-organizations/customizing-your-organizations-profile#organization-profile-readmes
astm.core.UnitType
and astm.core.SIUnitType
but also astm.technique.UnitType
and astm.technique.SIUnitType
exist, which causes problems when implementing this in strictly type safe languages such as Java from automatically generated code using xjc
. It also looks like the definitions are completely redundant.
Hi,
it would be great if this repo (actually, both AniML repos) carried some license information.
Which license to choose is of course up to you.
Yours,
Steffen
For adaptors and implementers it is very useful to have more examples
esp. HPLC, GC, microtiterplates, UV-vis, ...
Please add much more examples !
At least 3-5 for each major evolved technique.
Thanks a lot.
Let's see if we can use xsd2code to generate code from the AnIML schemas.
Ensure that the core and technique schema works in the current Microsoft XML tools.
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.