freestyle markup language

44
FREESTYLE MARKUP LANGUAGE Denis Pondorf Universität Bremen , Bremen, Germany Andreas Witt Institut für Deutsche Sprache , Mannheim, Germany Balisage Conference , Montréal, Canada Aug. 5, 2010

Upload: astra

Post on 18-Jan-2016

77 views

Category:

Documents


2 download

DESCRIPTION

FREESTYLE MARKUP LANGUAGE. Universität Bremen , Bremen, Germany. Denis Pondorf. Andreas Witt. Institut für Deutsche Sprache , Mannheim, Germany. Aug. 5, 2010. Balisage Conference , Montr é al, Canada. table of content. introduction. architecture. concepts. status. future work. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: FREESTYLE MARKUP LANGUAGE

FREESTYLE MARKUP LANGUAGE

Denis PondorfUniversität Bremen, Bremen, Germany

Andreas WittInstitut für Deutsche Sprache, Mannheim, Germany

Balisage Conference, Montréal, Canada

Aug. 5, 2010

Page 2: FREESTYLE MARKUP LANGUAGE

• introduction

Balisage Conference 2010: Freestyle Markup Language

• architecture

• concepts

• future work

• status

table of content

Page 3: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

INTRODUCTION: What is FML ?

• markup (meta-) language ( extensible, generalized, descriptive, open )

• simplified and extended XML

• principles: „maximum freedom“„markup data container“„simplicity“„document transformation graph“

Page 4: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

INTRODUCTION: hello world example<@fml.name="introduction“ fml.uri="http://www.freestyle-markup.org/intro.fml" fml.description="fml example document">

supercalifragilisticexpialidocious

<! translation: "wonderful" !>

<movie type="musical">Mary Poppins

</movie>

<year> 1964 </year>

Page 5: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

INTRODUCTION: related work

Page 6: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

INTRODUCTION: Why FML ?

• consolitates existing approaches• introduces new approaches

• deficit discourse consolidation:

• 10 concepts in one solution

• ready2use

• 19 requirements 19 features

• relevant integration scenarios (CEBIT-survey)

• pushing evolution

Page 7: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

ARCHITECTURE

FML-graphFML-document

FML-instance

transformation

FML core

XML-document

transformationXML

implementation

FML - controllerFML –

object model

2ndary technologies:• Freestyle schema• Freestyle query• Freestyle transformation• Freestyle compression• Freestyle database• Freestyle editor• …

serialization deserialization manipulation query

Page 8: FREESTYLE MARKUP LANGUAGE

• annotation

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS

• congruence

• fragmentation

• independence

• interference

• segmentation

• declaration• tagging• attribution

• identification

Page 9: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: annotation

Page 10: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: annotation

pipi

commentcomment

wildcardwildcard

tagtag

tagtag

Page 11: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: annotation

Page 12: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

COMPONENTS

Page 13: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

EBNF - GRAMMAR

fml.document = fml.prolog? (fml.content | fml.tag | fml.comment | fml.pi | fml.wildcard)* ;fml.prolog = fml.prolog.document fml.prolog.perspective* fml.prolog.namespace* ;fml.prolog.document = '<@' ('fml.name="' fml.attribute.value '"') (space 'fml.uri="' fml.attribute.value '"')? (space 'fml.description="' fml.attribute.value '"')? (space 'fml.version="' fml.attribute.value '"')? (space 'fml.fragment="' fml.attribute.value '"')? (space 'fml.schema="' fml.attribute.value '"')? (space 'fml.trim="' ('true'|'false') '"')? (space 'fml.writing-direction="' ('lr'|'rl') '"')? '>' linewrap ;fml.prolog.perspective = '<@' ('fml.perspective.name="' fml.attribute.value '"') (space 'fml.perspective.uri="' fml.attribute.value '"')? (space 'fml.perspective.description="' fml.attribute.value '"')? (space 'fml.perspective.schema="' fml.attribute.value '"')? '>' linewrap ;fml.prolog.namespace = '<@' ('fml.namespace.name="' fml.attribute.value '"') (space 'fml.namespace.uri="' fml.attribute.value '"')? (space 'fml.namespace.description="' fml.attribute.value '"')? '>' linewrap ;fml.content = ( (UTF-8-character - '<') | '\<' )* ;fml.tag = '<' (fml.tag.start | fml.tag.end | fml.tag.empty | fml.tag.multiple) '>' ;fml.tag.start = (fml.perspective.name '|')? (fml.namespace.name ':')? fml.tag.name (fml.tag.id)? (space fml.attribute)* ;fml.tag.end = (fml.perspective.name '|')? '/' (fml.namespace.name ':')? fml.tag.name (fml.tag.id)? ;fml.tag.empty = (fml.perspective.name '|')? (fml.namespace.name ':')? fml.tag.name (space fml.attribute)* '/' ;fml.tag.multiple = (fml.tag.start | fml.tag.end | fml.tag.empty) (fml.tag.start | fml.tag.end | fml.tag.empty)+ ;fml.tag.name = fml.name ;fml.tag.id = '#' fml.name ;fml.perspective.name = fml.name ;fml.namespace.name = fml.name ;fml.attribute = fml.attribute.name '="' fml.attribute.value '"' (',"' fml.attribute.value '"')* ;fml.attribute.name = fml.name ;fml.attribute.value = ( (UTF-8-character - '"') | '\"' )* ;fml.comment = '<!' fml.comment.content '!>' ;fml.comment.content = | UTF-8-character | (UTF-8-character? ( ('!' (UTF-8-character - '>') ) | ( (UTF-8-character - '!') UTF-8-character) )+ );fml.pi = '<?' (fml.perspective.name '|')? fml.pi.target space fml.pi.instruction '>' ;fml.pi.target = fml.name ;fml.pi.instruction = ( (UTF-8-character - '>') | '\>' )+ ;fml.wildcard = '<' (fml.perspective.name '|')? '>' ;fml.name = ( (UTF-8-character - escape-symbols.exclude) | escape-symbols.include )+ ;UTF-8-character = [U+0000 - U+FFFF] ;space = U+0020 ;linewrap = U+000A ;escape-symbols.exclude = ( '>', '<', '\', '@', '?', '!', '/', '|', ':', '#', space ) ;escape-symbols.include = ( '\>' | '\<', '\\', | '\@' | '\?' | '\!' | '\/' | '\|' | '\:' | '\#' | '\' space ) ;

Page 14: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

GRAPH

Page 15: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: interference

Page 16: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: interference

Page 17: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: interference

Page 18: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: interference

Page 19: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: interference

Page 20: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: congruence

Page 21: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: congruence

Page 22: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: congruence

Page 23: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: congruence

Page 24: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: congruence

Page 25: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence(multiple annotations, multiple perspectives, views, layers, multi-rooted trees, ...)

(multiple annotations, multiple perspectives, views, layers, multi-rooted trees, ...)

Page 26: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 27: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 28: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 29: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 30: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 31: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 32: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 33: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: independence

Page 34: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: segmentation

Page 35: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: segmentation

Page 36: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: segmentation

Page 37: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: segmentation

Page 38: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: segmentation

Page 39: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: fragmentation

Page 40: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: fragmentation

Page 41: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language

CONCEPTS: fragmentation

Page 42: FREESTYLE MARKUP LANGUAGE

reference analysis

Balisage Conference 2010: Freestyle Markup Language

STATUS

Freestyle Document

Freestyle Graph

transformation guidelines

XML representation

API

Page 43: FREESTYLE MARKUP LANGUAGE

• verification

Balisage Conference 2010: Freestyle Markup Language

FUTURE WORK

• reference implementation

• Freestyle Editor

• www.freestyle-markup.org maintenance

• 2ndary technologies...

Page 44: FREESTYLE MARKUP LANGUAGE

Balisage Conference 2010: Freestyle Markup Language