A .NET implementation of the 9th W3C SCXML draft
I've updated my .NET implementation to the specification of the 9th W3C draft.
Only the 'null' datamodel an the 'xpath' datamodel are supported.
Download Nordover.SCXML WD9 here.
The version of this software may be used for evaluation purpose for a period not to exeed 30 days.
An overwiew of the xpath data model implementation can be found here.
A license can be purchased here
System Requirements
8th Working Draft of SCXML has been published
Link: http://www.w3.org/TR/2010/WD-scxml-20101216/
I'm already checking the differences to the previous draft to implement the changes in a new version of Nordover.SCMXL.
A Simple State Machine Runtime Engine
I'm currently working on a framework to describe and to
execute a state model ( a set of states and transitions ) based on the
latest W3C State Chart XML draft.
To keep it simple, my current .NET implementation covers only the following topics from the draft:
- core module
- data module
- script module ( no ECMAScript, i'm using Lua )
The following SCXML document describes a primitive state machine:
<scxml name="application"
xmlns="http://www.w3.org/2005/07/scxml"
version="1.0"
profile="lua"
exmode="strict">
<datamodel>
<data id="year" expr="2010"/>
</datamodel>
<state id="S1">
<onentry>
<log expr="${ 'enter state: '..stateMachine:GetCurrentState().StateId}"/>
<if cond="_data.year == 2010">
<log expr="Happy new year"/>
</if>
</onentry>
<transition target="exit"/>
</state>
<final id="exit"/>
</scxml>
When executed, the state machine will reach state 'S1' as the initial state.
The 'onentry' handler contains executable content that will be executed.
The eventless and conditionless transition will exit state 'S1' and will activate the final state 'exit'.
The code below demonstrates the usage of the nordover scxml framework:
using Nordover.Statemachine.SCXML.Interfaces;
// create state machine instance
IStateMachine sm = StateMachine.Load("application.scxml");
// register log handler
sm.Log += LogHandler;
// execute the state machine
IStateMachineContext context = sm.Execute();
...
static void LogHandler(string label, string expr)
{
Console.WriteLine("LOG: {0}", expr);
}
to be continued
Imprint
Impressum
Angaben gemäß § 5 TMG:
Harald Lehn
Softwareentwicklung
Heiliggrabgasse, 3
55116 Mainz
Kontakt:
|
Telefon: |
06131 9209887 |
|
Telefax: |
|
|
E-Mail: |
info(at)nordover.de |
Quelle: Impressum-Generator, Rechtsanwalt für Internetrecht Sören Siebert
Haftungsausschluss:
Haftung für Inhalte
Die Inhalte unserer Seiten wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen. Als Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei Bekanntwerden von entsprechenden Rechtsverletzungen werden wir diese Inhalte umgehend entfernen.
Haftung für Links
Unser Angebot enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich. Die verlinkten Seiten wurden zum Zeitpunkt der Verlinkung auf mögliche Rechtsverstöße überprüft. Rechtswidrige Inhalte waren zum Zeitpunkt der Verlinkung nicht erkennbar. Eine permanente inhaltliche Kontrolle der verlinkten Seiten ist jedoch ohne konkrete Anhaltspunkte einer Rechtsverletzung nicht zumutbar. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Links umgehend entfernen.
Urheberrecht
Die durch die Seitenbetreiber erstellten Inhalte und Werke auf diesen Seiten unterliegen dem deutschen Urheberrecht. Die Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers. Downloads und Kopien dieser Seite sind nur für den privaten, nicht kommerziellen Gebrauch gestattet. Soweit die Inhalte auf dieser Seite nicht vom Betreiber erstellt wurden, werden die Urheberrechte Dritter beachtet. Insbesondere werden Inhalte Dritter als solche gekennzeichnet. Sollten Sie trotzdem auf eine Urheberrechtsverletzung aufmerksam werden, bitten wir um einen entsprechenden Hinweis. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Inhalte umgehend entfernen.
Datenschutz
Die Nutzung unserer Webseite ist in der Regel ohne Angabe personenbezogener Daten möglich. Soweit auf unseren Seiten personenbezogene Daten (beispielsweise Name, Anschrift oder eMail-Adressen) erhoben werden, erfolgt dies, soweit möglich, stets auf freiwilliger Basis. Diese Daten werden ohne Ihre ausdrückliche Zustimmung nicht an Dritte weitergegeben.
Wir weisen darauf hin, dass die Datenübertragung im Internet (z.B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.
Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten durch Dritte zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit ausdrücklich widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-Mails, vor.
Quellverweis: eRecht24 Disclaimer
