Skip to content

Commit

Permalink
feat(comp-ref-path): limit path to known possibilities
Browse files Browse the repository at this point in the history
  • Loading branch information
sanjayankur31 committed Sep 10, 2023
1 parent e48b7a6 commit 38c99fd
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions Schemas/NeuroML2/NeuroML_v2.3.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -144,13 +144,13 @@
<xs:pattern value="[a-zA-Z0-9_:]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Nml2ComponentPath">
<xs:simpleType name="Nml2PopulationReferencePath">
<xs:annotation>
<xs:documentation>A path referring to another component.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="/?(((\.\./)|(\./)|(\[[0-9]*\])|([a-zA-Z0-9][a-zA-Z0-9_]*))/?)*"/>
<xs:pattern value="(\.\./)?([a-zA-Z_][a-zA-Z0-9_]*)((\[[0-9]+\])|(/[0-9]+)+((/[a-zA-Z_][a-zA-Z0-9_]*)?)/?)"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="NonNegativeInteger">
Expand Down Expand Up @@ -1366,8 +1366,8 @@
<xs:extension base="BaseVoltageDepSynapse">
<xs:attribute name="synapse1" type="NmlId" use="required"/>
<xs:attribute name="synapse2" type="NmlId" use="required"/>
<xs:attribute name="synapse1Path" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="synapse2Path" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="synapse1Path" type="xs:string" use="required"/>
<xs:attribute name="synapse2Path" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Expand Down Expand Up @@ -2778,7 +2778,7 @@
<xs:element name="spike" type="Spike" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="synapse" type="NmlId" use="required"/>
<xs:attribute name="spikeTarget" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="spikeTarget" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Expand Down Expand Up @@ -2860,7 +2860,7 @@
<xs:extension base="Standalone">
<xs:attribute name="averageRate" type="Nml2Quantity_pertime" use="required"/>
<xs:attribute name="synapse" type="xs:string" use="required"/>
<xs:attribute name="spikeTarget" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="spikeTarget" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Expand All @@ -2883,7 +2883,7 @@
<xs:attribute name="delay" type="Nml2Quantity_time" use="required"/>
<xs:attribute name="duration" type="Nml2Quantity_time" use="required"/>
<xs:attribute name="synapse" type="xs:string" use="required"/>
<xs:attribute name="spikeTarget" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="spikeTarget" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Expand Down Expand Up @@ -3106,8 +3106,8 @@
<xs:complexContent>
<xs:extension base="BaseWithoutId">
<xs:attribute name="neuroLexId" type="NeuroLexId" use="optional"/>
<xs:attribute name="from" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="to" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="from" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="to" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="synapse" type="NmlId" use="required"/>
<xs:attribute name="destination" type="NmlId" use="optional"/>
</xs:extension>
Expand Down Expand Up @@ -3157,10 +3157,10 @@
</xs:annotation>
<xs:complexContent>
<xs:extension base="BaseConnection">
<xs:attribute name="preCellId" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="preCellId" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="preSegmentId" type="NonNegativeInteger" default="0"/>
<xs:attribute name="preFractionAlong" type="ZeroToOne" default="0.5"/>
<xs:attribute name="postCellId" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="postCellId" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="postSegmentId" type="NonNegativeInteger" default="0"/>
<xs:attribute name="postFractionAlong" type="ZeroToOne" default="0.5"/>
</xs:extension>
Expand All @@ -3173,10 +3173,10 @@
</xs:annotation>
<xs:complexContent>
<xs:extension base="BaseConnection">
<xs:attribute name="preCell" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="preCell" type="xs:string" use="required"/>
<xs:attribute name="preSegment" type="NonNegativeInteger" default="0"/>
<xs:attribute name="preFractionAlong" type="ZeroToOne" default="0.5"/>
<xs:attribute name="postCell" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="postCell" type="xs:string" use="required"/>
<xs:attribute name="postSegment" type="NonNegativeInteger" default="0"/>
<xs:attribute name="postFractionAlong" type="ZeroToOne" default="0.5"/>
</xs:extension>
Expand Down Expand Up @@ -3318,9 +3318,9 @@
</xs:annotation>
<xs:complexContent>
<xs:extension base="BaseWithoutId">
<xs:attribute name="target" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="input" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="destination" type="Nml2ComponentPath"/>
<xs:attribute name="target" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="input" type="NmlId" use="required"/>
<xs:attribute name="destination" type="NmlId"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
Expand All @@ -3347,7 +3347,7 @@
</xs:annotation>
<xs:complexContent>
<xs:extension base="BaseNonNegativeIntegerId">
<xs:attribute name="target" type="Nml2ComponentPath" use="required"/>
<xs:attribute name="target" type="Nml2PopulationReferencePath" use="required"/>
<xs:attribute name="destination" type="NmlId" use="required"/>
<xs:attribute name="segmentId" type="NonNegativeInteger"/>
<xs:attribute name="fractionAlong" type="ZeroToOne"/>
Expand Down

0 comments on commit 38c99fd

Please sign in to comment.