Comments (3)
Xtext ships some commonly used terminals [1] and our language is using these [2]. This is pragmatic and we can change once we need/want to.
The effect of using STRING
for the name/id is that the name/id is in double-quotes and just a string without constraints on the content. This is maybe not what we want in the long run but good to get started. It allows us to play with both simple and URI identifiers. For URI identifiers, we would otherwise need to define a custom terminal instead. Once we need identifiers that are cross-referenceable, we will come back to this.
1: https://github.com/eclipse/xtext-core/blob/master/org.eclipse.xtext/src/org/eclipse/xtext/common/Terminals.xtext
2: https://github.com/zazuko/api-testing-dsl/blob/master/com.zazuko.apitesting.dsl/com.zazuko.apitesting.dsl/src/com/zazuko/apitesting/dsl/ApiTestingDsl.xtext#L1
from hypertest.
On the DSL side, I used the default STRING
terminal rule from Xtext for the name/id instead of defining a custom terminal rule:
With Class "http://schema.org/Person" {
}
generates ..
{
"steps": [
{
"type": "Class",
"classId": "http://schema.org/Person",
"children": [
]
}
]
}
from hypertest.
On the DSL side, I used the default STRING terminal rule from Xtext for the name/id instead of defining a custom terminal rule:
I don't understand what that means :)
from hypertest.
Related Issues (20)
- Add code coverage & codecov HOT 1
- Create language highlighting style for VuePress
- Hydra should use URI/QName terminals instead of string HOT 1
- CLI to recursively compile all sources HOT 1
- Explain the response and representation context
- Some steps should be repeatable
- Refactor generators to use a JSON builder
- Variable suggestion should come with brackets
- Setting up operation invoke (request)
- Operation should be usable as statement HOT 1
- Add validation error when a variable is not found in current block HOT 2
- Using files as request body HOT 2
- Handling multiple values of properties HOT 1
- Generator should not throw on unmapped prefix
- Property statement should handle more than just string
- Prefixed name cannot contain a hyphen
- Constraining blocks based on representation state HOT 1
- Method statement
- It is impossible to check resource id
- Add outDir parameter
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hypertest.