buildingSMART / buildingSMART/IFC5-development

path pattern : regular expression vs. examples

Open
#63 5 comments 0 reactions 0 assignees View on GitHub
schema
Dominant language
HTML
Stars
220
Forks
80
Avg merge
4d 6h
Merged PRs (30d)
2

Description

Currently, ifcx.tsp stipulates:

```typespec
@pattern("")
scalar path extends string;

model IfcxNode {
path: path;
children?: Record;
inherits?: Record;
attributes?: Record;
}
```
The pattern decorator for path accepts a regular expression that does not include hyphens `-`, and more generally would exclude paths found in example, such as `"path": "25503984-6605-43a1-8597-eae657ff5bea"` (in hello-wall.ifcx) where the start '' are missing.

Also, even if the pattern were corrected to allow UUIDs, it might still exclude URIs or IRIs, which can be made unique using adequate strategies when needed. What are the reason(s) to deter from using URIs?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the path scalar and @pattern declaration in ifcx.tsp, then compare it with the UUID example in hello-wall.ifcx. Determine whether the pattern should accept the shown paths, UUIDs, URIs, or IRIs, and finish with a documented decision and corresponding schema or example updates.

Written by the indexing model from the issue text.

Assessment

Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.