SlideShare a Scribd company logo
1 of 41
Copyright © 2014 SolutionsIQ, Inc. All rights reserved.
By: Tim Myer
PIMped Papyrus
A Language Workbench For UML DSLs
Working Agreement
Electronics
By Exception
Ask
Questions
Start / End
on Time
Backlog
History
NIEM
SEARCH
JIEM
SIQ
Me
DSLs
NIEM
Modeling
Abstract
/ Config
Internal /
External
Work-
bench
Stereo-
types
Papyrus
QVT
Lucene
PIM /
PSM
Future
Gener-
ator
Backlog
Who /
Why
NIEM
SEARCH
JIEM
SIQ
Me
What
How
Abstract
/ Config
Internal /
External
Stereo-
types
Papyrus
QVT
Lucene
Work-
bench
PIM /
PSM
Future
Gener-
ator
Backlog Doing Done
History
DSLs
NIEM
Modeling
National Information Exchange Model
• Approach for Information Exchange
• Local
• State
• National
• Community-Driven
• Standards-Based
National Consortium for Justice Information and Statistics
• Facilitate information sharing
• Predict, prevent, respond to and
recover from hazard type events
• Protect the privacy and civil liberties
of individuals
• Developed by DOJ and SEARCH
• Methodology
• Reference Model
• Modeling Tool
Justice Information Exchange Model
• EMF-based Workflow
Editor
• Information Exchange
Modeler
• UML Profiles
JIEM Modeling Tool
• Enterprise Agile transformation services
• Staffing
• Outsourced and onsite development
• Scrum, Lean, SAFe and XP training
• Release planning facilitation
• Executive workshops
SolutionsIQ
• Climby dude
• XP coach
• Programmer
• Sometime WIKISPEED contributor
• timezra online
Tim Myer
Backlog Doing Done
History
DSLs
NIEM
Modeling
What is a DSL?
• A limited form of language
• Addresses a specific need
• Has structure
• Structure determines concrete syntax
How Can We Describe It?
• External
• Translated from another language
• Internal
• Subset of the host
Platform Independent and Specific Models
Projecting Editor
• Storage representation
• Textual files
• Editable representation
• AST
• Allows errors and ambiguities
Making Abstractions Concrete
• Semantics of the DSL
• Turn a PIM to a PSM
• Turn a PSM into XSDs, MPD, IEPD, …
Backlog Doing Done
History
DSLs
NIEM
Modeling
The Abstract Syntax
The Abstract Syntax
Extended Elements
• Package
• Component
• Class
• Datatype
• Property
• Generalization
• Realization
• Usage
• Comment
The Concrete Syntax
The Projecting Editor
The Workbench Palette
Palette Declaration
Palette Definition
Properties View Configuration
Properties View Configuration
Properties Editor Enhancements
Properties View Enhancements
Properties View Enhancements
Inline Editor Configuration
Inline Editor Contribution
PIM to PSM to MPD and Back!
Generators
Re-using Libraries
Import Intellisense
Intellisense Configuration
Where Do We Go Now?
• Move CI to Travis-CI
• Automate Github releases
• .MSIs and .Apps
• Papyrus 1.0
• NIEM 3.0
• Luna
• New features
• More contributors
Backlog Doing Done
History
DSLs
NIEM
Modeling
Evaluate This Session
Sign-in: www.eclipsecon.org
Select session from schedule
Evaluate:
1
2
3

More Related Content

Similar to PIMped Papyrus - A Language Workbench for UML DSLs

8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development SecuritySam Bowne
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitectureAshwini Kuntamukkala
 
Domain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsDomain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsMark Windholtz
 
Data Model for Mainframe in Splunk: The Newest Feature of Ironstream
Data Model for Mainframe in Splunk: The Newest Feature of IronstreamData Model for Mainframe in Splunk: The Newest Feature of Ironstream
Data Model for Mainframe in Splunk: The Newest Feature of IronstreamPrecisely
 
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...Precisely
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development SecuritySam Bowne
 
CISSP Prep: Ch 9. Software Development Security
CISSP Prep: Ch 9. Software Development SecurityCISSP Prep: Ch 9. Software Development Security
CISSP Prep: Ch 9. Software Development SecuritySam Bowne
 
Scim2012 q1update chrisphillips
Scim2012 q1update chrisphillipsScim2012 q1update chrisphillips
Scim2012 q1update chrisphillipsChris Phillips
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talksRuslan Meshenberg
 
Apache Geode Meetup, London
Apache Geode Meetup, LondonApache Geode Meetup, London
Apache Geode Meetup, LondonApache Geode
 
DPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy HarveyDPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy Harveyharryvanhaaren
 
Migration Approaches for FDMEE
Migration Approaches for FDMEEMigration Approaches for FDMEE
Migration Approaches for FDMEEAlithya
 
Better Results. Less Work. Optimize IT with Mainframe Visibility in Splunk
Better Results. Less Work. Optimize IT with Mainframe Visibility in SplunkBetter Results. Less Work. Optimize IT with Mainframe Visibility in Splunk
Better Results. Less Work. Optimize IT with Mainframe Visibility in SplunkPrecisely
 
Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFxThomas Daly
 
Automating Infrastructure as a Service Deployments and monitoring – TEC213
Automating Infrastructure as a Service Deployments and monitoring – TEC213Automating Infrastructure as a Service Deployments and monitoring – TEC213
Automating Infrastructure as a Service Deployments and monitoring – TEC213Chris Kernaghan
 
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...WSO2
 
Open, Secure & Transparent AI Pipelines
Open, Secure & Transparent AI PipelinesOpen, Secure & Transparent AI Pipelines
Open, Secure & Transparent AI PipelinesNick Pentreath
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableComsysto Reply GmbH
 

Similar to PIMped Papyrus - A Language Workbench for UML DSLs (20)

8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development Security
 
Node.js architecture (EN)
Node.js architecture (EN)Node.js architecture (EN)
Node.js architecture (EN)
 
Pros & Cons of Microservices Architecture
Pros & Cons of Microservices ArchitecturePros & Cons of Microservices Architecture
Pros & Cons of Microservices Architecture
 
Domain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsDomain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic Patterns
 
Data Model for Mainframe in Splunk: The Newest Feature of Ironstream
Data Model for Mainframe in Splunk: The Newest Feature of IronstreamData Model for Mainframe in Splunk: The Newest Feature of Ironstream
Data Model for Mainframe in Splunk: The Newest Feature of Ironstream
 
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...
How Precisely and Splunk Can Help You Better Manage Your IBM Z and IBM i Envi...
 
8. Software Development Security
8. Software Development Security8. Software Development Security
8. Software Development Security
 
CISSP Prep: Ch 9. Software Development Security
CISSP Prep: Ch 9. Software Development SecurityCISSP Prep: Ch 9. Software Development Security
CISSP Prep: Ch 9. Software Development Security
 
Scim2012 q1update chrisphillips
Scim2012 q1update chrisphillipsScim2012 q1update chrisphillips
Scim2012 q1update chrisphillips
 
Netflix oss season 2 episode 1 - meetup Lightning talks
Netflix oss   season 2 episode 1 - meetup Lightning talksNetflix oss   season 2 episode 1 - meetup Lightning talks
Netflix oss season 2 episode 1 - meetup Lightning talks
 
Apache Geode Meetup, London
Apache Geode Meetup, LondonApache Geode Meetup, London
Apache Geode Meetup, London
 
DPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy HarveyDPDK Architecture Musings - Andy Harvey
DPDK Architecture Musings - Andy Harvey
 
Migration Approaches for FDMEE
Migration Approaches for FDMEEMigration Approaches for FDMEE
Migration Approaches for FDMEE
 
Better Results. Less Work. Optimize IT with Mainframe Visibility in Splunk
Better Results. Less Work. Optimize IT with Mainframe Visibility in SplunkBetter Results. Less Work. Optimize IT with Mainframe Visibility in Splunk
Better Results. Less Work. Optimize IT with Mainframe Visibility in Splunk
 
DataOps with Project Amaterasu
DataOps with Project AmaterasuDataOps with Project Amaterasu
DataOps with Project Amaterasu
 
Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFx
 
Automating Infrastructure as a Service Deployments and monitoring – TEC213
Automating Infrastructure as a Service Deployments and monitoring – TEC213Automating Infrastructure as a Service Deployments and monitoring – TEC213
Automating Infrastructure as a Service Deployments and monitoring – TEC213
 
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...WSO2 Intro Webinar -  Simplifying Enterprise Integration with Configurable WS...
WSO2 Intro Webinar - Simplifying Enterprise Integration with Configurable WS...
 
Open, Secure & Transparent AI Pipelines
Open, Secure & Transparent AI PipelinesOpen, Secure & Transparent AI Pipelines
Open, Secure & Transparent AI Pipelines
 
Software Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuableSoftware Architecture and Architectors: useless VS valuable
Software Architecture and Architectors: useless VS valuable
 

More from Accenture | SolutionsIQ

More from Accenture | SolutionsIQ (12)

The Product Wall Release Planning Workshop by Alan Dayley
The Product Wall Release Planning Workshop by Alan DayleyThe Product Wall Release Planning Workshop by Alan Dayley
The Product Wall Release Planning Workshop by Alan Dayley
 
The DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu SmalleyThe DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu Smalley
 
Who Killed Agile?
Who Killed Agile?Who Killed Agile?
Who Killed Agile?
 
Active Portfolio Management
Active Portfolio ManagementActive Portfolio Management
Active Portfolio Management
 
Lambda The Extreme: Test-Driving a Functional Language
Lambda The Extreme: Test-Driving a Functional LanguageLambda The Extreme: Test-Driving a Functional Language
Lambda The Extreme: Test-Driving a Functional Language
 
Agile2014 Briefing Deck
Agile2014 Briefing DeckAgile2014 Briefing Deck
Agile2014 Briefing Deck
 
It's OK to Fail: Creating a Safe Space to Learn from Failure
It's OK to Fail: Creating a Safe Space to Learn from FailureIt's OK to Fail: Creating a Safe Space to Learn from Failure
It's OK to Fail: Creating a Safe Space to Learn from Failure
 
Active Portfolio Management
Active Portfolio ManagementActive Portfolio Management
Active Portfolio Management
 
Fear and Loathing in Agility: Long Live the Accounting Department
Fear and Loathing in Agility: Long Live the Accounting DepartmentFear and Loathing in Agility: Long Live the Accounting Department
Fear and Loathing in Agility: Long Live the Accounting Department
 
Active portfolio management
Active portfolio managementActive portfolio management
Active portfolio management
 
Agile DevOps: Environment Automation
Agile DevOps: Environment AutomationAgile DevOps: Environment Automation
Agile DevOps: Environment Automation
 
Agile2013 Briefing Deck
Agile2013 Briefing DeckAgile2013 Briefing Deck
Agile2013 Briefing Deck
 

Recently uploaded

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Recently uploaded (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

PIMped Papyrus - A Language Workbench for UML DSLs

Editor's Notes

  1. Formally initiated in April 2005 by the chief information officers of the U.S. Department of Homeland Security and the U.S. Department of Justice, NIEM is a community-driven, government-wide, standards-based approach to exchanging information. NIEM has issued three releases: 1.0 in 2006, 2.0 in 2007, and 2.1 in 2009. The NIEM 3.0 schemas are now available. NIEM-UML for Version 3.0 is currently in progress. (see https://www.niem.gov/aboutniem/Pages/history.aspx)
  2. SEARCH leads efforts to facilitate information sharing and communication solutions that help State, local and tribal agencies better predict, prevent, respond to and recover from criminal activity, natural disasters, terrorist and all hazard type events. SEARCH also focuses on protecting the privacy and civil liberties of individuals whose data and information is the subject of the electronic information sharing environment.(see http://www.search.org/about-search/company-background/)
  3. Developed by the U.S. Department of Justice Bureau of Justice Assistance, and SEARCH, to help jurisdictions across the country document their business information sharing requirements. (see http://www.search.org/programs/info/jiem/)
  4. (see http://www.search.org/programs/info/jiem/tool/)
  5. https://github.com/timezrahttp://timezra.blogspot.com/
  6. (see http://martinfowler.com/articles/languageWorkbench.html#DefiningANewDsl)
  7. The abstraction language and the configuration language are the same.No symbolic barrier.Tools available for the host language are available for the configuration language.(see http://martinfowler.com/articles/languageWorkbench.html#DefiningANewDsl)
  8. Sometimes a DSL can seem like a small bivy site on top of a large mountain with crevasses and seracs below.Platform Independent Model of model-driven DSLs - The problem here is that the UML is a mightily complex language. The extension mechanisms are also quite complex and it's not easy to see how they will work out in practice. It's also not clear how well tools will be able to manipulate these extensions. One particular gray area is that of generation.(see http://martinfowler.com/articles/mdaLanguageWorkbench.html)
  9. The abstraction language and the configuration language are the same.No symbolic barrier.Tools available for the host language are available for the configuration language.(see http://martinfowler.com/articles/languageWorkbench.html#DefiningANewDsl)
  10. There is no standard generation standards to define how UML diagrams get interpreted as code. As a result there's no sufficiently precise semantics for the UML. Indeed I've heard UML proponents proud to say that UML has no semantics.(see http://martinfowler.com/articles/mdaLanguageWorkbench.html)
  11. There are 4 main UML Profiles that contain our UML Stereotype declarations:NIEM_Common_Profile contains Stereotypes available in either the PIM or the PSMNIEM_PIM_Profile contains the platform independent StereotypesNIEM_PSM_Profile contains platform specific StereotypesModel_Package_Description_Profile contains Stereotypes used for packaging the emitted schemas, catalog, changelog and sample XML files.
  12. The NIEM UML abstract syntax is defined by UML Stereotypes
  13. Our vocabulary comprises a very small subset of UML elements.
  14. The Pet Adoption example comes with the NIEM UML Tooling.
  15. Papyrus provides a customizable editor and views for using UML-based DSLs.
  16. These palette contributions require no coding, only configuration.